Что нового

[Окна, Диалоги] Вызов экранной клавиатуры, или чем она отличается от notepad

Gab2010

Новичок
Сообщения
5
Репутация
0
Вопрос вызывает метод Run().
Хочется вызывать Экранную Клавиатуру из кода, для этого пытаюсь использовать встроенный метод Run("полный путь").

Типичный для ваших примеров
Код:
$iPID3 = Run("C:\Windows\System32\notepad.exe")


работает на ура. Также, работает его брат:

Код:
$iPID3 = Run("C:\Windows\System32\mspaint.exe")


Но стоит написать

Код:
$iPID3 = Run("C:\Windows\System32\osk.exe")


, как все ломается. Приложение с именем osk лежит в той же системной папке на пару десятков позиций ниже блокнота, если его запустить - таки появится экранная клавиатура, так в чем магия? Если какая-то каста приложений, которые винда не даст запустить программно?
 

Skif_off

Знающий
Сообщения
173
Репутация
12
Gab2010
AutoIt x32, ОС х64? Что-то такое было, кажется. ShellExecute() не пробовали? Правда, на 3.3.8.1 придётся получать $iPID3 как-то так
Код:
ShellExecute('C:\Windows\System32\osk.exe')
If Not @error Then $iPID3 = ProcessExists('osk.exe')

но в более свежих функция возвращает PID.
 

pvnn

Осваивающий
Сообщения
282
Репутация
31
Можно просто
Код:
ShellExecute('osk')
 
Автор
G

Gab2010

Новичок
Сообщения
5
Репутация
0
Да, это работает, благодарю покорно.
Ушел рыть справку про этот "усиленный выполнить", ни в одном примере его не увидел).
 
Верх