Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; при установленных параметрах текущий скрипт ничего не добавляет в реестр.
- ; авторегистрация и удаление регистрации используя ключи в ком-строке /a, /d
- If $CmdLine[0]>0 Then
- Switch $CmdLine[1]
- Case '/a'
- RegRead("HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", @ScriptName)
- If @Error Then
- RegWrite("HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", @ScriptName, "REG_SZ", '"'&@ScriptFullPath&'"')
- MsgBox(0, 'Сообщение', 'регистрация в автозагрузке выполнена')
- Else
- If MsgBox(4, 'Сообщение', 'Ключ уже существует'&@CRLF&'Перезаписать принудительно?')=6 Then
- RegWrite("HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", @ScriptName, "REG_SZ", '"'&@ScriptFullPath&'"')
- MsgBox(0, 'Сообщение', 'регистрация в автозагрузке выполнена')
- EndIf
- EndIf
- Case '/d'
- RegRead("HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", @ScriptName)
- If @Error Then
- MsgBox(0, 'Сообщение', 'Ключ отсутствует'&@CRLF&'удаление не требуется')
- Else
- RegDelete("HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", @ScriptName)
- MsgBox(0, 'Сообщение', 'Удаление ключа выполнено')
- EndIf
- Case Else; Or '/?' Or '/h' Or '/help'
- MsgBox(0, 'Сообщение', 'Поддерживаются ключи:'&@CRLF&'/a - регистрация скрипта в автозагрузке'&@CRLF&'/d - удаление регистрации в автозагрузке')
- EndSwitch
- EndIf
- ; авторегистрация
- $auto=0
- If $auto = 1 Then
- RegRead("HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", @ScriptName)
- If @Error Then RegWrite("HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", @ScriptName, "REG_SZ", '"'&@ScriptFullPath&'"')
- EndIf
- ; автостарт путём создания ярлыка в атозагрузке
- $Autostart=0
- If $Autostart=1 Then
- $filename=StringRegExpReplace(@ScriptName, '(^.*)\.(.*)$', '\1')
- If Not FileExists(@StartupDir&'\'&$filename&'.lnk') Then FileCreateShortcut ( @ScriptFullPath, @StartupDir&'\'&$filename&'.lnk' )
- EndIf
- ; удаление автостарта путём удаления ярлыка в атозагрузке
- $DelAutostart=0
- If $DelAutostart=1 Then
- $filename=StringRegExpReplace(@ScriptName, '(^.*)\.(.*)$', '\1')
- If FileExists(@StartupDir&'\'&$filename&'.lnk') Then FileDelete (@StartupDir&'\'&$filename&'.lnk')
- EndIf
- ; пример с функцией, здесь жёсткое условие, либо автозагрузка, либо неавтозагрузка
- Func _Autostart()
- $filename=StringRegExpReplace(@ScriptName, '(^.*)\.(.*)$', '\1')
- If $Autostart=1 Then
- If Not FileExists(@StartupDir&'\'&$filename&'.lnk') Then FileCreateShortcut ( @ScriptFullPath, @StartupDir&'\'&$filename&'.lnk' )
- Else
- If FileExists(@StartupDir&'\'&$filename&'.lnk') Then FileDelete (@StartupDir&'\'&$filename&'.lnk')
- EndIf
- EndFunc
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement