2009-08-11 14:29:03 +0000 2009-08-11 14:29:03 +0000
65
65

Polecenie wiersza poleceń (cmd) do zablokowania komputera z systemem Windows

Czy istnieje sposób na zablokowanie maszyny z systemem Windows XP za pomocą wiersza poleceń? Polecenie shutdown nie ma takiej opcji.

Odpowiedzi (9)

98
98
98
2009-08-11 14:30:42 +0000
rundll32.exe user32.dll,LockWorkStation

Zostałem ostrzeżony, że nie jest to zalecane (z wyjątkiem Microsoft ). Ostrzeżenia są również skupione wokół bliskiego krewnego tego polecenia, ExitWindowsEx (które wyłącza komputer). Nigdy nie miałem z tym żadnych problemów, ale YMMV .

Schlump : Pudel-małpa może mieć rację. Legenda ostrzega, że kod jest potężny i niebezpieczny.
Nudar : Mój Boże. Lepiej użyjmy go tylko trzy lub cztery razy. Sześć, maksymalnie.
Nibbler : Ale nawet jedno użycie może zniszczyć wszechświat!
Nudar : Rozumiem. Dwa lub trzy razy.

Źródło )

11
11
11
2009-08-12 15:44:40 +0000

Jeśli masz dostęp do kompilatora C++ w Visual Studio, oto (niezwykle skomplikowane) źródło:

//
//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);
}
6
6
6
2011-01-16 00:18:09 +0000

Zauważ, że w Windows Vista/7 możesz użyć polecenia tsdiscon, aby rozłączyć sesję Pulpitu zdalnego/ zablokować stację roboczą.

Jeśli użyjesz polecenia rundll32.exe user32.dll, LockWorkStation podczas sesji Pulpitu zdalnego (w Windows 7/Vista), sesja będzie kontynuowana, ale w oknie Pulpitu zdalnego zobaczysz tylko ekran blokady.

2
2
2
2015-08-03 14:10:43 +0000

Do uruchomienia na schedulerze lub po kilku minutach od odejścia od komputera można użyćtimeout /t 36000 /nobreak & rundll32.exe user32.dll,LockWorkStation utworzyć plik .bat umieścić go w zaplanowanym zadaniu, umieścić wyzwalacz uruchomić na bezczynności.

Możesz zmienić /t xxx. jak długo trzeba czekać.

Dzięki Kevinowi, użył on komendy do wyłączenia, to jest:timeout /t 36000 /nobreak & shutdown /h /f.

2
2
2
2012-06-01 08:34:25 +0000

Ponieważ nie zaleca się uruchamiania LockWorkStation poprzez rundll32.exe, innym rozwiązaniem jest użycie Wizmo . Wystarczy uruchomić:

wizmo lock
```.
1
1
1
2014-06-09 08:52:29 +0000

Oto działające polecenie bat dla zdalnego komputera

@echo off
COLOR 3E
@echo Lock Remote PC
SET /P PC=ıp or Host Name: 
\%PC%\c$\Windows\System32\rundll32.exe user32.dll,LockWorkStation
1
1
1
2014-06-10 19:41:27 +0000

Ustawiłem mój komputer tak, aby automatycznie się logował, natychmiast uruchamiał “rundll32.exe user32.dll,LockWorkStation”, a następnie rozpoczynał ładowanie aplikacji (pojedynczy plik .CMD w moim folderze startowym).

Działa ładnie. Kiedy muszę zrestartować komputer i jestem w punkcie krytycznym, restartuję komputer, idę na przerwę, itp. i kiedy wracam, odblokowuję komputer. Wszystkie aplikacje załadowane.

-3
-3
-3
2011-06-25 14:59:58 +0000

Możesz to również zrobić z lokalnego komputera, aby zablokować zdalną stację roboczą za pomocą ścieżki UNC:

\computername\c$\Windows\System32\rundll32.exe user32.dll,LockWorkStation

Uzyskanie odmowy dostępu ze stacjami roboczymi z systemem Windows 7, ale działa z systemem Windows XP.

-6
-6
-6
2012-10-30 03:05:05 +0000

W Windows Server 2012 naciśnij: Win + L