Podobnie jak w protipie
aptm.in/protip/0081 wykorzystujemy funkcję
LockWorkStation
windowsowej biblioteki
user32.dll
. Tym razem jednak nie wykorzystujemy aplikacji
rundll32.exe
lecz importujemy bibliotekę do aktualnej sesji PowerShella.
Wersja bardziej czytelna, ale już nie jako oneliner, mogłaby wyglądać następująco:
Add-Type -TypeDefinition @'
public class User32 {
[System.Runtime.InteropServices.DllImport("user32.dll")]
public static extern bool LockWorkStation();}
'@
[User32]::LockWorkStation()
Jak już zapewne wiecie, w tle uruchomi się kompilator
csc.exe
, zgodnie z tym co omawialiśmy przy okazji protipa
aptm.in/protip/007f.
Jeśli chcesz otrzymywać nowe, mięsiste protipy na maila, a także zostać czasem powiadomiony o wartościowych wydarzeniach - dołącz do subskrybentów.