BigAp.ru — интернет-магазин электроники и бытовой техники

Автор Тема: Скрипт блокировки экрана  (Прочитано 1974 раз)

0 Пользователей и 1 Гость просматривают эту тему.

poganeene

  • Гость
Скрипт блокировки экрана
« : Декабрь 09, 2013, 12:39:54 pm »
Добрый день коллеги!

Хочу написать скрипт по блокировке экрана, после многократного нажатия одной клавиши (этакое залипание)

Допустим залипла какая нибудь клавиша - была нажата 5-10 раз, после чего происходит блокировка экрана.

Как я понимаю необходимо перевести каждую клавишу в ASCII код и выполнить действие после которого происходит блокировка.

Какой синтаксис последовательности действий необходимо вставить до блокировки экрана?

Сдесь реализована только блокировка
WScript.CreateObject("WScript.Shell").Run(_
    "rundll32 user32.dll,LockWorkStation")   
« Последнее редактирование: Февраль 19, 2014, 09:02:59 pm от sysadmin »

 

Оффлайн sysadmin

  • Administrator
  • сисадми́н
  • *****
  • Сообщений: 8203
  • Karma: +112/-0
  • Пол: Мужской
    • Share Post
    • сайт для сис. админов и не только...
Скрипт блокировки экрана
« Ответ #1 : Декабрь 09, 2013, 02:17:09 pm »
Не скажу на счет перехвата нажатий клавиш, но в скрипт я бы добавил обработку исключений:
on error resume next
Dim objShell
Set objShell = CreateObject("Wscript.Shell")
objShell.Run "rundll32.exe user32.dll, LockWorkStation"
If err.number<>0 then
Wscript.Quit
Else
Wscript.Quit
End If

p.s. на всякий случай вдруг пригодится - %windir%\System32\rundll32.exe user32.dll,LockWorkStation
« Последнее редактирование: Декабрь 09, 2013, 02:24:11 pm от sysadmin »
дорогу осилит идущий...
......................
MCP, MCTS, RHCSA
......................
also aka xck...

Оффлайн sysadmin

  • Administrator
  • сисадми́н
  • *****
  • Сообщений: 8203
  • Karma: +112/-0
  • Пол: Мужской
    • Share Post
    • сайт для сис. админов и не только...
Re: Скрипт блокировки экрана
« Ответ #2 : Декабрь 10, 2013, 09:30:21 am »
Нашел скрипт, позволяющий даже удаленно блокировать экран:
Option Explicit
Dim objWMIService, objProcess
Dim strShell, objProgram, strComputer, strExe, strInput
strExe = "rundll32.exe user32.dll,LockWorkStation"
' Input Box to get name of machine to run the process
Do
strComputer = (InputBox(" ComputerName to Run Script",_
"Computer Name"))
If strComputer <> "" Then
strInput = True
End if
Loop until strInput = True

' Connect to WMI
set objWMIService = getobject("winmgmts://"_
& strComputer & "/root/cimv2")
' Obtain the Win32_Process class of object.
Set objProcess = objWMIService.Get("Win32_Process")
Set objProgram = objProcess.Methods_( _
"Create").InParameters.SpawnInstance_
objProgram.CommandLine = strExe

'Execute the program now at the command line.
Set strShell = objWMIService.ExecMethod( _
"Win32_Process", "Create", objProgram)

'WScript.echo "Created: " & strExe & " on " & strComputer
WSCript.Quit
' End of Example of a Process VBScript


thumbup
Linux запись с экрана

Автор sysadmin

2 Ответов
551 Просмотров
Последний ответ Февраль 05, 2015, 02:12:53 pm
от sysadmin
xx
Запись видео с экрана

Автор sysadmin

0 Ответов
3572 Просмотров
Последний ответ Сентябрь 17, 2009, 08:47:42 am
от sysadmin
xx
Сброс настроек экрана(ов) в Linux?

Автор sysadmin

0 Ответов
1151 Просмотров
Последний ответ Ноябрь 25, 2013, 07:55:59 pm
от sysadmin
xx
Linux - запись видео с экрана

Автор sysadmin

0 Ответов
222 Просмотров
Последний ответ Февраль 26, 2016, 09:57:15 am
от sysadmin