#include <File.au3>
#include <Misc.au3>
Opt("TrayIconHide", 1)
Opt("SendKeyDelay", 0)
Local $sTarget = _GetPath(@ProgramFilesDir & "\1cv8") & "\bin\chdbfl.exe"
If @error Then Exit MsgBox(0, "", "Не удалось получить полный путь")
If $CmdLine[0] <> 2 Then
MsgBox(0, "Описание параметров запуска", "Check1CD.exe ИсправлятьОшибки ИмяФайлаБД" & @CRLF & @CRLF & _
"ИсправлятьОшибки: 0 или 1" & @CRLF & "ИмяФайлаБД: путь к файлу 1Cv8.1CD")
Exit
EndIf
Run($sTarget)
WinWait("Проверка физической целостности файла БД")
Send($CmdLine[2], 1)
Send("{TAB}")
If $CmdLine[1] = "1" Then
Send("{SPACE}")
EndIf
Send("{TAB 2}{ENTER}")
Func _GetPath($sStartPath)
Local $aFolderList = _FileListToArray($sStartPath, "?.?.?.?", $FLTA_FOLDERS), $sCurVer, $sFilePath
If @error Then Return SetError(@error, 0, 0)
For $i = 1 To $aFolderList[0]
If _VersionCompare($sCurVer, $aFolderList[$i]) = -1 Then $sCurVer = $aFolderList[$i]
Next
$sFilePath = $sStartPath & "\" & $sCurVer
If Not FileExists($sFilePath) Then Return SetError(5, 0, 0)
Return $sFilePath
EndFunc ;==>_GetPath