답변:
rundll32.exe user32.dll,LockWorkStation
나는 이것이 권장되지 않는다는 경고를 받았습니다 ( Microsoft 제외 ). 경고는 명령의 가까운 친척 ExitWindowsEx (컴퓨터를 종료하는 동안)를 중심으로합니다. 나는 그것에 대해 아무런 문제가 없었지만 YMMV .
Schlump : 푸들 원숭이가 옳을 수도 있습니다. 범례는 코드가 강력하고 위험하다고 경고합니다.
Nudar : 나의 신. 우리는 단지 3-4 번만 사용하는 것이 좋습니다. 여섯, 최대
니 블러 : 그러나 한 번의 사용으로도 우주가 산산조각 날 수 있습니다!
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