Dobrze byłoby, aby Twoje skrypty, które wymagają wywołania w konsoli z podniesionymi uprawnieniami sprawdzały to wcześniej. Istnieją na to dwa sposoby, wykorzystanie klas .NET lub instrukcji #Requires -RunAsAdministrator.

Użycie.NET wymaga napisania instrukcji warunkowej, która zostanie wykonana w skrypcie, jako pierwsza, a precyzyjnie mówiąc od razu po przekazaniu wymaganych parametrów.

Użycie instrukcji #Requires -RunAsAdministrator jest prostsze, wymaga dodania jej gdziekolwiek w skrypcie. Choć najlepiej zrobić to na samym początku skryptu, ale to tylko z względu na czytelność takiego kodu.

Pierwszy sposób jest złożony, ale bardziej elegancki. Dający możliwość spersonalizowania zwracanego komunikatu, ale ma jedną wadę, zostanie wykonany po podaniu wszystkich wymaganych parametrów. Drugi krótki, szybko i nie wykona skryptu przed spełnieniem warunku lecz wali po oczach 😉

Mateusz Nadobnik

Z pasją poświęcam czas na zdobywanie wiedzy w zakresie szeroko rozumianej Data Platform. Zachwycony językiem skryptowym Windows PowerShell. Swoją wiedzę, doświadczenia i spostrzeżenia opisuję na blogu.

read more