Командная строка (cmd) для блокировки машины windows
Есть ли способ заблокировать машину Windows XP с помощью командной строки? Команда shutdown
не имеет для этого возможности.
Есть ли способ заблокировать машину Windows XP с помощью командной строки? Команда shutdown
не имеет для этого возможности.
rundll32.exe user32.dll,LockWorkStation
Меня предупредили, что это не рекомендуется (за исключением Microsoft ). Предупреждения также сосредоточены вокруг близкого родственника команды, ExitWindowsEx (Который выключает компьютер). У меня никогда не было никаких проблем с ней, но YMMV .
Schlump : Обезьяна-пудель может быть права. Легенда предупреждает, что код мощный и опасный.
Нудар : Боже мой. Нам лучше использовать его только три или четыре раза. Шесть, максимум.
Nibbler : Но даже одно использование может разрушить вселенную!
Nudar : Понял. Два или три раза.
Источник )
Если у вас есть доступ к компилятору Visual Studio C++, то вот (крайне сложный) исходник:
//
//LockWorkStation.cpp
//
//Locks the console.
//
//To compile (VC++ 2003, on one line):
//
// cl.exe /W4 LockWorkStation.cpp /link /RELEASE /OPT:REF /OPT:NOWIN98
// /ENTRY:mainStartup /SUBSYSTEM:CONSOLE kernel32.lib
//
#if !defined(_WIN32_WINNT) || (_WIN32_WINNT < 0x0500)
#undef _WIN32_WINNT
#define _WIN32_WINNT 0x0500
#endif
#include <windows.h>
void mainStartup(void)
{
LockWorkStation();
ExitProcess(0);
}
Обратите внимание, что в Windows Vista/7 вы можете использовать команду tsdiscon
для отключения сеанса Remote Desktop/блокировки вашей рабочей станции.
Если вы используете команду rundll32.exe user32.dll, LockWorkStation
в сеансе удаленного рабочего стола (в Windows 7/Vista), сеанс продолжится, но в окне удаленного рабочего стола вы увидите только окно блокировки.
Для запуска на планировщике или через несколько минут после того, как вы оставили компьютер, вы можете использоватьtimeout /t 36000 /nobreak & rundll32.exe user32.dll,LockWorkStation
создать файл .bat
, поместить его в запланированное задание, поставить триггер на холостой ход.
Вы можете изменить /t xxx
. сколько вам нужно ждать.
Благодаря Кевину, он использовал команду выключения, thats:timeout /t 36000 /nobreak & shutdown /h /f
.
Я настроил компьютер на автоматический вход в систему, немедленно запустите “rundll32.exe user32.dll, LockWorkStation”, а затем запустите загрузку приложений (один файл .CMD в моей папке запуска).
Работает нормально. Когда мне нужно перезагрузиться и я нахожусь в точке перерыва, я перезагружаю компьютер, делаю перерыв и т.д., а когда я возвращаюсь, я разблокирую компьютер. Все приложения загружены.
Вы также можете сделать это с локальной машины, чтобы заблокировать удаленную рабочую станцию, используя путь UNC:
\computername\c$\Windows\System32\rundll32.exe user32.dll,LockWorkStation
Получение доступа запрещено на рабочих станциях Windows 7, но работает с Windows XP.