Answers:
rundll32.exe user32.dll,LockWorkStation
我被警告不建议这样做(Microsoft除外)。警告也集中在命令的近亲ExitWindowsEx周围(这将关闭计算机)。我从来没有任何问题,但YMMV。
舒伦普(Schlump):狮子狗可能是对的。图例警告该代码功能强大且危险。
Nudar:我的天哪。我们最好只使用三到四次。最多六个
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);
}
cmd /s /c ""C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64 & cl.exe /W4 LockWorkStation.cpp /link /RELEASE /ENTRY:mainStartup /SUBSYSTEM:CONSOLE kernel32.lib user32.lib"
请注意,在Windows Vista / 7中,可以使用命令tsdiscon
断开远程桌面会话/锁定工作站。
如果rundll32.exe user32.dll, LockWorkStation
在远程桌面会话中使用该命令(在Windows 7 / Vista中),该会话将继续,但是您只会在“远程桌面”窗口中看到锁定屏幕。
对于在调度程序上运行,或者在离开计算机几分钟后,可以使用
timeout /t 36000 /nobreak & rundll32.exe user32.dll,LockWorkStation
创建.bat
文件将其放入计划任务中,将触发器置于空闲状态。
您可以更改/t xxx
。您需要等待多少时间。
感谢Kevin,他使用了该命令来关闭系统,即:
timeout /t 36000 /nobreak & shutdown /h /f