Windows の起動時に保護されたファイルにアクセスする Python スクリプトを実行する

Windows の起動時に保護されたファイルにアクセスする Python スクリプトを実行する

管理者アクセスのみを許可するテキストをファイルに追加する Python スクリプトがありますhosts。そこで、まず Windows 7 のスタート メニューから cmd を開き、右クリックして [管理者として実行] を選択します。

それはうまくいきます。

ただし、私の意図は、Windows の起動後すぐにその Python スクリプトを実行することです。

間に保護されたファイルがない場合hosts、Python スクリプトの拡張子を .py から .pyw に変更し、スクリプトをスタートアップ フォルダーに配置して、Windows の起動時にスクリプトを実行するだけですが、この場合、スクリプトは実行されません。

どうすればこれが実現できるか誰か提案してくれませんか?

編集: 提案された重複では問題は解決されません。タスク スケジューラで .py または .pyw スクリプトを指定しても、何も起こりません。

.cmd ファイルまたは .bat ファイルを指定する必要があると思いますが、そのようなファイルに何を書き込むべきかわかりません。

答え1

単純、

  1. メモ帳を開く
  2. 次のコードを挿入します

@echo off

start < python script path here >

exit

注: 上記のタグに.pyスクリプトのパスを記載してください。

  1. このファイルを「anyname.bat」として任意の場所に保存します
  2. タスクスケジューラを開く
  3. 新しいタスクを作成
  4. Run with highest privilegesこのタスクの「」トークンを有効にする
  5. アクションタブに移動
  6. トリガーを追加しrun a program、バッチファイルを選択します
  7. タスクをスケジュールするrun at startup
  8. OKをクリック

答え2

自分の質問に答えます。私がやったことは、Ashok の回答で提案されているように .bat ファイルを作成することです。

@echo off
start C:/folder/script.pyw
exit

Python の名前を .pyw 拡張子に変更する必要があります。

.bat ファイルをダブルクリックしても、管理者として実行されていないため、問題は解決されません。これを修正するには、次の手順を実行します。

  1. タスクスケジューラを開く
  2. 新しいタスクを作成
  3. 「最高権限で実行」を選択します
  4. actionタブへ移動
  5. トリガーを追加しrun a program、バッチファイルを選択します
  6. 起動時にタスクを実行するようにスケジュールする
  7. 保存をクリック

終わり。

関連情報