Стас,где здесь ошибка? Скрипт запускается и сразу завершается. Он же постоянно должен работать.
PHP код:
#NoTrayIcon
#RequireAdmin
#pragma compile(Icon, "C:\Program Files (x86)\AutoIt3\Icons\au3script_v9.ico")
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Compression=4
#AutoIt3Wrapper_UseUpx=y
#AutoIt3Wrapper_Run_AU3Check=n
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <WindowsConstants.au3>
#include<Process.au3>
; Это команда на сон
Global $PBT_APMSUSPEND = 0x0004
Global $PBT_APMRESUMESUSPEND = 0x0007
$hGUI = GUICreate("Restart", 100, 100, 1, 1)
GUIRegisterMsg($WM_POWERBROADCAST, "Standby")
Sleep(1500)
; Перезапуск BlueSoleilCS
Run('taskkill /f /im BtTray.exe',"", @SW_HIDE)
Run('taskkill /f /im BlueSoleilCS.exe',"", @SW_HIDE)
Run('taskkill /f /im BsHelpCS.exe',"", @SW_HIDE)
Run('taskkill /f /im BsMobileCS.exe',"", @SW_HIDE)
ShellExecute("C:\Program Files (x86)\IVT Corporation\BlueSoleil\BtTray.exe")
Func Standby($hWnd, $Msg, $wParam, $lParam)
Select
; Вход в спящий режим
Case $wParam = $PBT_APMSUSPEND
Suspend()
; Выход из спящего режима
Case $wParam = $PBT_APMRESUMESUSPEND
ResumeSuspend()
Case Else
EndSelect
EndFunc
; Вход в спящий режим
Func Suspend()
If (ProcessExists("iCarDS.exe")) Then
WinClose("iCar DS"))
EndIf
If (ProcessExists("foobar200.exe")) Then
WinClose("foobar2000")
EndIf
EndFunc
; Выход из спящего режима
Func ResumeSuspend()
If (ProcessWaitClose("foobar2000.exe", 5) == 0) Then
ProcessClose("foobar2000.exe")
EndIf
Sleep(100)
If (ProcessWaitClose("iCarDS.exe", 3) == 0) Then
WinClose("iCar DS")
EndIf
Sleep(1000)
; Перезапуск BlueSoleilCS
Run('taskkill /f /im BtTray.exe',"", @SW_HIDE)
Run('taskkill /f /im BlueSoleilCS.exe',"", @SW_HIDE)
Run('taskkill /f /im BsHelpCS.exe',"", @SW_HIDE)
Run('taskkill /f /im BsMobileCS.exe',"", @SW_HIDE)
ShellExecute("C:\Program Files (x86)\IVT Corporation\BlueSoleil\BtTray.exe")
Sleep(1000)
; Запускаем iCarDS
If (Not ProcessExists("iCarDS.exe")) Then
ShellExecute("C:\Program Files (x86)\TipTop software\iCar DS\iCarDS.exe")
EndIf
EndFunc