
我有一個 Python 腳本,它會向hosts
文件添加一些文本,僅允許管理員訪問。因此,我首先從 Windows 7 的「開始」功能表中開啟 cmd,然後右鍵單擊並轉到「以管理員身份執行」。
效果很好。
但是,我的目的是讓該 Python 腳本在 Windows 啟動後立即運行。
如果之間沒有受保護的hosts
文件,我只需將Python 腳本的擴展名從.py 更改為.pyw 並將腳本放入Startup 資料夾中,讓Windows 在啟動時執行它,但在這種情況下,腳本將不會運行。
有人會建議我如何做到這一點嗎?
編輯:建議的副本不能解決我的問題。如果我指向任務計劃程式中的 .py 或 .pyw 腳本,則不會發生任何情況。
我想我應該指向 .cmd 或 .bat 文件,但不知道在這樣的文件中寫入什麼。
答案1
簡單的,
- 打開記事本
- 插入以下程式碼
@echo off
start < python script path here >
exit
注意:在上面的標籤中提及.py腳本的路徑
- 將此檔案儲存為“anyname.bat”在任何地方
- 開啟任務計劃程序
- 建立新任務
Run with highest privileges
為此任務啟用“ ”令牌- 轉到操作選項卡
- 新增
run a program
觸發器並選擇批次文件 - 將任務安排到
run at startup
- 按一下“確定”
答案2
回答我自己的問題。我所做的是按照 Ashok 的回答建議創建了一個 .bat 檔案:
@echo off
start C:/folder/script.pyw
exit
您應該將 Python 重新命名為 .pyw 副檔名。
雙擊 .bat 檔案還不能解決問題,因為它沒有以管理員身分執行。要解決這個問題:
- 開啟任務計劃程序
- 建立新任務
- 選擇“以最高權限運行”
- 轉到
action
選項卡 - 新增
run a program
觸發器並選擇批次文件 - 安排任務在啟動時運行
- 點選儲存
完畢。