-
AutoIt
(
http://forum.oszone.net/forumdisplay.php?f=103)
Запуск программы по маске
Доброе время суток. Как запустить программу по маске. Имеется допустим AcroRdrDC1500720033_ru_RU.exe и с выходом нового релиза версия (сборка) меняется. И мне нужно, чтобы скрипт запускал программу по маске AcroRdrDC*_ru_RU.exe
|
Запустит первый подходящий файл из текущего каталога, прочие проигнорирует:
Код:
AutoItSetOption("MustDeclareVars", 1)
Local $oFSO = ObjCreate("Scripting.FileSystemObject")
Local $oFile
For $oFile In $oFSO.GetFolder(".").Files
If StringRegExp($oFile.Name, "AcroRdrDC\d+_ru_RU\.exe") = 1 Then
ConsoleWrite($oFile.Name & @CRLF)
Run($oFile.Name)
ExitLoop
EndIf
Next
Exit(0)
|
Iska, а как правильно вставить $oFile.Name между исполняемым файлом допусти 7z.exe и командой для распаковки -oc:\soft
|
Цитата:
Цитата habib2302
а как правильно вставить $oFile.Name между исполняемым файлом допусти 7z.exe и командой для распаковки -oc:\soft »
|
Покажите, как выглядит команда, просто с «AcroRdrDC1500720033_ru_RU.exe».
|
7z.exe e @ScriptDir\AcroRdrDC1500720033_ru_RU.exe -o@ScriptDir\AcroRdrDC
|
Ну, если надо именно так — не текущий каталог, а каталог скрипта — то придётся по-другому.
Код:
AutoItSetOption("MustDeclareVars", 1)
Local $oFSO = ObjCreate("Scripting.FileSystemObject")
Local $oFile
For $oFile In $oFSO.GetFolder(@ScriptDir).Files
If StringRegExp($oFile.Name, "AcroRdrDC\d+_ru_RU\.exe") = 1 Then
Run('"7z.exe" e "' & $oFSO.BuildPath(@ScriptDir, $oFile.Name) & '" -o"' & $oFSO.BuildPath(@ScriptDir, 'AcroRdrDC') & '"')
ExitLoop
EndIf
Next
Exit(0)
|
Время: 16:44.
© OSzone.net 2001-