Есть скрипт, который нажимает определенную кнопку, в зависимости от значения, в окне, которое появляется на незарегистрированном TotalCommander. В Win7 все работает замечательно, а в Win10 есть одна особенность.
Если в Win10 Total находится в папке Program Files, то значение не считывается. Если Total поместить в другую папку, в доступ которой не нужны права администратора, то значение считывается.
Запуск скрипта от имени администратора не решает проблему.
Что можно сделать в данном случае?
Если в Win10 Total находится в папке Program Files, то значение не считывается. Если Total поместить в другую папку, в доступ которой не нужны права администратора, то значение считывается.
Запуск скрипта от имени администратора не решает проблему.
Что можно сделать в данном случае?
Код:
If FileExists(@ScriptDir&'\TOTALCMD64.EXE') Then
Run(@ScriptDir&'\TOTALCMD64.EXE')
ElseIf FileExists(@ScriptDir&'\TOTALCMD.EXE') Then
Run(@ScriptDir&'\TOTALCMD.EXE')
Else
Exit MsgBox(16, 'Запуск тотала', 'Не найден ни один из фалов запуска "TOTALCMD.EXE" или "TOTALCMD64.EXE"')
EndIf
$HWin=WinWait('[Title:Total Commander; Class:TNASTYNAGSCREEN]', '', 3)
If $HWin=0 Then Exit MsgBox(262144+16, 'Запуск тотала', 'Не найдено окно нажатия кнопки')
$Num=ControlGetText($HWin, '', 'Window4')
Switch $Num
Case 1
ControlClick($HWin, '', 'Button3')
Case 2
ControlClick($HWin, '', 'Button2')
Case 3
ControlClick($HWin, '', 'Button1')
Case Else
MsgBox(16, 'Запуск тотала', 'Считанное значение не соответствует предусмотренным, значение - '&$Num)
EndSwitch