Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #AutoIt3Wrapper_Outfile=P-2k10.exe
- #AutoIt3Wrapper_Icon=0.ico
- #AutoIt3Wrapper_Compression=n
- #AutoIt3Wrapper_UseUpx=n
- ; #AutoIt3Wrapper_UseX64=y
- #AutoIt3Wrapper_UseAnsi=y
- #AutoIt3Wrapper_Res_Comment=
- #AutoIt3Wrapper_Res_Description=P-2k10.exe
- #AutoIt3Wrapper_Res_Fileversion=0.2.0.0
- #AutoIt3Wrapper_Res_FileVersion_AutoIncrement=n
- #AutoIt3Wrapper_Res_LegalCopyright=AZJIO
- #AutoIt3Wrapper_Res_Language=1049
- #AutoIt3Wrapper_Run_Au3check=n
- #AutoIt3Wrapper_Res_Icon_Add=1.ico
- #AutoIt3Wrapper_Res_Icon_Add=2.ico
- ; #AutoIt3Wrapper_Res_Icon_Add=3.ico
- ; #AutoIt3Wrapper_Res_Icon_Add=4.ico
- ; #AutoIt3Wrapper_Res_Icon_Add=5.ico
- #AutoIt3Wrapper_Run_After=%autoitdir%\SciTE\upx\upx.exe -7 --compress-icons=0 "%out%"
- ShellExecute(FileGetShortName(@ScriptDir&'\P2start.cmd'), 'Update', @ScriptDir, '', @SW_HIDE)
- Opt("TrayIconHide", 1)
- $Ini = @ScriptDir & '\P-2k10.ini'
- ; If $CmdLine[0]>0 Then
- ; $IniType=IniRead($Ini, 'exclude', 'Type', 'CDROM;FIXED')
- ; $IniLabel=IniRead($Ini, 'exclude', 'Label', '')
- ; $IniPath=IniRead($Ini, 'exclude', 'Path', '')
- ; $IniDisk=IniRead($Ini, 'exclude', 'Disk', '')
- ; EndIf
- ; http://www.autoitscript.com/forum/topic/79460-usbmon/page__view__findpost__p__572867
- ;============# Запрет на повторный запуск #====================================
- $hMutex = DllCall("kernel32.dll", "hwnd", "OpenMutex", "int", 0x1F0001, "int", False, "str", "USB459345")
- If $hMutex[0] Then
- $hWnd = WinGetHandle("USB459345")
- WinSetState($hWnd, "", @SW_RESTORE)
- DllCall("user32.dll", "int", "SetForegroundWindow", "hwnd", $hWnd)
- Exit
- EndIf
- $hMutex = DllCall("kernel32.dll", "hwnd", "CreateMutex", "int", 0, "int", False, "str", "USB459345")
- ;============================================================================
- Opt("TrayIconHide", 0)
- Opt("TrayMenuMode", 7)
- Opt("TrayOnEventMode", 1)
- Global $TpOff = 0, $curico=0, $Dr=0, $CurDrives[1]
- Global Const $DBT_DEVICEARRIVAL = 0x8000 ; Найдено новое устройство
- Global Const $DBT_DEVICEREMOVECOMPLETE = 0x8004 ; отключенное устройство
- Global Const $DBT_DEVTYP_VOLUME = 0x00000002 ; Логический диск
- If @compiled Then
- $AutoItExe=@AutoItExe
- Else
- $AutoItExe=@ScriptDir&'\P-2k10.dll'
- EndIf
- ; $autorun=IniRead($Ini, 'Set', 'autorun', '')
- ; $arg=IniRead($Ini, 'Set', 'arg', '')
- ; $OutProcessClose=IniRead($Ini, 'Set', 'OutProcessClose', '')
- TraySetToolTip('Программы 2k10')
- $update = TrayCreateItem('Обновить')
- TrayItemSetOnEvent(-1, "_update")
- $nExit = TrayCreateItem('Выход')
- TrayItemSetOnEvent(-1, "_Quit")
- TraySetIcon($AutoItExe, $curico)
- TraySetState()
- $Gui = GUICreate("USB1", 370, 140)
- GUISetState(@SW_HIDE, $Gui)
- GUISetState(@SW_DISABLE, $Gui)
- GUIRegisterMsg(0x0219, "WM_DEVICECHANGE")
- While 1
- Sleep(1000)
- WEnd
- ; http://www.autoitscript.com/forum/topic/79460-usbmon/page__view__findpost__p__572867
- Func WM_DEVICECHANGE($hWnd, $Msg, $wParam, $lParam)
- If ($wParam = $DBT_DEVICEARRIVAL) Or ($wParam = $DBT_DEVICEREMOVECOMPLETE) Then
- Local $DEV_BROADCAST_VOLUME = DllStructCreate("int dbcvsize;int dbcvdevicetype;int dbcvreserved;int dbcvunitmask;" & _
- "ushort dbcvflags", $lParam)
- Local $iDriveType = DllStructGetData($DEV_BROADCAST_VOLUME, "dbcvdevicetype")
- Else
- Return 'GUI_RUNDEFMSG'
- EndIf
- If $iDriveType <> $DBT_DEVTYP_VOLUME Then Return 'GUI_RUNDEFMSG'
- Local $iMask = DllStructGetData($DEV_BROADCAST_VOLUME, "dbcvunitmask")
- $iMask = Log($iMask) / Log(2)
- Local $iDrive = Chr(65 + $iMask) & ":"
- Switch $wParam
- Case $DBT_DEVICEARRIVAL ; обнаружение флешки
- TraySetIcon($AutoItExe, 201)
- ShellExecute(FileGetShortName(@ScriptDir&'\P2start.cmd'), 'Start', @ScriptDir, '', @SW_HIDE)
- Case $DBT_DEVICEREMOVECOMPLETE ; отключение флешки
- TraySetIcon($AutoItExe, 202)
- ShellExecute(FileGetShortName(@ScriptDir&'\P2start.cmd'), 'Update', @ScriptDir, '', @SW_HIDE)
- EndSwitch
- GUIRegisterMsg(0x0113, "WM_TIMER")
- DllCall("User32.dll", "int", "SetTimer", "hwnd", $Gui, "int", 50, "int", 2000, "int", 0)
- Return 'GUI_RUNDEFMSG'
- EndFunc
- Func WM_TIMER()
- TraySetIcon($AutoItExe, $curico)
- GUIRegisterMsg(0x0113, '')
- DllCall("user32.dll", "int", "KillTimer", "hwnd", $Gui, "int*", 50)
- EndFunc
- Func _Quit()
- TraySetState(2)
- ShellExecute(FileGetShortName(@ScriptDir&'\P2start.cmd'), 'Exit', @ScriptDir, '', @SW_HIDE)
- Exit
- EndFunc
- Func _update()
- TraySetState(2)
- ShellExecute(FileGetShortName(@ScriptDir&'\P2start.cmd'), 'Update', @ScriptDir, '', @SW_HIDE)
- EndFunc
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement