可能重複:
Lock Windows workstation programmatically in C#如何以編程方式鎖定Windows工作站?
我目前工作的一個Visual Studio的Windows窗體應用程序,需要鎖定工作站的功能。如何在調用函數時使用user32.dll來執行鎖定(Windows + L)?
可能重複:
Lock Windows workstation programmatically in C#如何以編程方式鎖定Windows工作站?
我目前工作的一個Visual Studio的Windows窗體應用程序,需要鎖定工作站的功能。如何在調用函數時使用user32.dll來執行鎖定(Windows + L)?
我還沒有嘗試過自己,但我發現this對谷歌
Process.Start(@"C:\WINDOWS\system32\rundll32.exe", "user32.dll,LockWorkStation");
編輯:我試了一下,和它的作品!
edit2:這裏是solution使用user32.dll
,不啓動外部進程。
using System.Runtime.InteropServices;
聲明一個方法是這樣的:
[DllImport("user32.dll")]
public static extern bool LockWorkStation();
,然後調用LockWorkStation();
。
瞧
是的,重複的問題不是提供你的天才解決方案! –
+1。使用user32.dll,檢查,鎖定工作站,檢查。是的,似乎有幫助。但是,爲此啓動一個子進程可能會有無法預料的情況。誰知道。 =) –
Psst。 **如果您從「重複」問題中複製了該問題,請歸因於原作者。 =) –
using System.Runtime.InteropServices;
[DllImport("user32.dll")]
public static extern int ExitWindowsEx(int uFlags, int dwReserved);
就叫
ExitWindowsEx(0, 0);
這看起來會註銷用戶,不會根據需要鎖定工作站。 – Iridium
以某種方式鎖定工作站,並將用戶發送回用戶選擇屏幕。缺點是用戶會放棄所有的工作。 – TheLegendaryCopyCoder
我貼是要求一個託管解決方案的重複數據刪除,但非託管的解決方案張貼在問題本身:) –
不是重複可能的重複不提供解決方案! –
答案在問題 – spender