2015-05-17 4 views
0

Я пытаюсь сделать программу, которая блокирует экран. Я пробовал Send("#l"), и он не работает, хотя #f и #r работает отлично.Как заблокировать экран с помощью autoIT win8.1

Send("{LWINDOWN}{l}{LWINUP}") также не работает.

Я использую autoIT 3, 32-разрядную версию на 64-битном ПК. Можете ли вы мне помочь?

+0

Я решил проблему с помощью MouseMove() и MouseClick() – user3598726

ответ

0

Вы должны быть в состоянии достичь его более элегантно с этим:

Run (@COMSPEC & '/ с' & 'rundll32.exe user32.dll, LockWorkStation', "", @ SW_HIDE)

+1

. Процедура использования функций Windows API: 1. Просмотрите статьи справки WinAPI.au3, чтобы узнать, определено ли это заранее. 2. Когда это не так, используйте 'DllCall' для вызова функции из соответствующей системной библиотеки. «Запуск» должен быть последним вариантом, потому что нет встроенного способа обработки ошибок. С помощью UDF вы можете использовать '@ error' или' _WinAPI_GetLastError' –

2

В самом деле изящным способом, использовать предопределенную функцию WinAPI.au3

_WinAPI_LockWorkStation 

Посмотреть автономный файл справки для этого UDF, и MSDN для его влияния на систему.

Смежные вопросы