我有一个 Python 脚本,它向文件添加一些文本hosts
,只允许管理员访问。因此,我首先从 Windows 7 上的“开始”菜单打开 cmd,然后右键单击并转到“以管理员身份运行”。
效果很好。
但是,我的目的是让该 Python 脚本在 Windows 启动时立即运行。
如果中间没有受保护的hosts
文件,我只需将 Python 脚本的扩展名从 .py 更改为 .pyw,并将脚本放在启动文件夹中,以便 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
触发器并选择批处理文件 - 安排任务在启动时运行
- 点击保存
完毕。