I ran into this example for locking Windows workstation:
using System.Runtime.InteropServices;
...
[DllImport("user32.dll", SetLastError = true)]
static extern bool LockWorkStation();
...
if (!LockWorkStation())
throw new Win32Exception(Marshal.GetLastWin32Error()); // or any other thing
Is there a pure managed alternative to this snippet? Namely, without P-Invoke.
To lock a Windows workstation press CTRL + ALT + DEL and choose "Lock" from the list. To resume work, log back in with your password. Alternatively you can use the keyboard shortcut Windows button + L, which immediately locks the workstation.
Using the Keyboard: Press Ctrl, Alt and Del at the same time. Then, select Lock from the options that appear on the screen.
No there is not. This is the best way to achieve this action.
Even if it was provided in the BCL, its implementation would almost certainly be identical to your sample. It's not something the CLR would natively implement.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With