ホームページ >バックエンド開発 >Python チュートリアル >Windows で昇格された特権を使用して Python スクリプトを実行するにはどうすればよいですか?

Windows で昇格された特権を使用して Python スクリプトを実行するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-03 17:52:10488ブラウズ

How to Run a Python Script with Elevated Privileges on Windows?

Windows で昇格した特権でスクリプトを実行する方法

多くのアプリケーションでは、特定のリソースにアクセスしたり、特権タスクを実行したりするために昇格した特権が必要です。 Windows では、UAC (ユーザー アカウント制御) が、不正な変更を防止することでオペレーティング システムとユーザー データを保護します。この記事では、Windows で昇格された特権でスクリプトを実行する方法について説明します。

'isUserAdmin' 関数と 'runAsAdmin' 関数を使用した解決策

提供されたコード スニペットとその後の問題については、Preston Landers によって開発されたモジュールを通じて、より堅牢なソリューションが利用可能です。このモジュールは、isUserAdmin と runAsAdmin という 2 つの主要な関数を定義します。

isUserAdmin
この関数は、現在のユーザーが管理者権限を持っているかどうかを確認します。

runAsAdmin
この関数は、ユーザーに UAC を要求することでスクリプトの権限を昇格します。 authorization.

使用例

import admin

if not admin.isUserAdmin():
    admin.runAsAdmin()

このコード部分は、ユーザーが管理者であるかどうかを確認します。そうでない場合は、UAC の確認を求められ、昇格された特権でスクリプトが再起動されます。

「pyuac」パッケージを使用した改良版

元のスクリプトの作成以来、作成者はという Python パッケージとして更新およびリリースされました。 'pyuac':

インストール:

pip install pyuac
pip install pypiwin32

pyuac を使用した使用例

import pyuac

def main():
    print("Do admin stuff here.")

if __name__ == "__main__":
    if not pyuac.isUserAdmin():
        print("Re-launching as admin!")
        pyuac.runAsAdmin()
    else:
        main()

以上がWindows で昇格された特権を使用して Python スクリプトを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。