Windows系统配置python脚本开机启动的3种方法分享
作者:junjie 发布时间:2022-02-27 22:09:24
测试环境:windows Server 2003 R2
一、开始菜单启动项实现
用户必须登录才可执行。
测试脚本(python代码):
import time
fout = open('e:\\1.txt','w')
while True:
tmp = '%d-%02d-%02d %02d:%02d:%02d \r\n' % time.localtime()[0:6]
print tmp
fout.write(tmp)
fout.flush()
time.sleep(5)
1、常规操作
1.1 创建快捷方式;
1.2 将创建的快捷方式放入开始菜单启动项;
1.3、开机验证;
2、隐藏命令行窗口启动
上述操作方法有命令行窗口,有些场合感觉不太实用,我们可以通过以下两种方式去掉命令行窗口。
2.1 将python脚本的文件扩展名改为".pyw"
其它操作和上述过程类似,这里不再赘述。
2.2 通过vbs之类的脚本启动
vbs代码如下:
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c E:\test1.py",vbhide
路径根据具体情况进行配置,其它的和之前的操作类似,这里不再赘述。
如果不想用快捷方式的话,把脚本直接放入启动项也可以。
附:
配置账户自动登录
通过开始菜单启动项来实现的话,必须进行相应保证用户登录系统,这里介绍一种账户自动登录的方法。
a、 在运行框中键入“Rundll32 netplwiz.dll,UsersRunDll”;
b、 打开用户账户界面,将“要使用本机,用户必须输入用户名和密码”前面的勾去掉,按”确定“后输入需要自动登录的用户名和密码;
二、开机脚本
不能用循环,最好配置超时时间。
测试代码(python):
import time
fout = open('e:\\1.txt','w')
tmp = '%d-%02d-%02d %02d:%02d:%02d \r\n' % time.localtime()[0:6]
print tmp
fout.write(tmp)
fout.close()
步骤如下:
a、运行中输入gpedit.msc打开组策略编辑器;
b、选择“计算机配置”=>“Windows 设置”=>“脚本”=>“启动”选项;
c、选择脚本;
d、配置脚本最长等待时间,路径为“计算机配置”=>“管理模版”=>“系统”=>“脚本”=>“组策略脚本的最长等待时间”;
三、通过一个服务调用该脚本
a、编写脚本启动服务serviceStartShell,代码如下(这里只列出main函数的代码):
int main(int argc,char* argv[])
{
Init();
dwThreadID = GetCurrentThreadId();
SERVICE_TABLE_ENTRY st[] =
{
{ szServiceName, (LPSERVICE_MAIN_FUNCTION)ServiceMain },
{ NULL, NULL }
};
//printf("argc = %d \n",argc);
if((4 == argc) && 0 == stricmp(argv[3],"/install") )
{
Install(argv[1],argv[2]);
writeReg(argv[1],argv[2]);
}
else if ((2 == argc) && 0 == stricmp(argv[1], "/uninstall") )
{
Uninstall();
}
else
{
if (!StartServiceCtrlDispatcher(st))
{
//printf("Register Service Main Function Error!");
}
}
return 0;
}
b、服务安装;
serviceStartShell.exe C:\Python27\python.exe e:\test1.py /install
c、服务卸载;
serviceStartShell.exe /uninstall
猜你喜欢
- PyMongo是什么PyMongo是驱动程序,使python程序能够使用Mongodb数据库,使用python编写而成.安装环境
- 从2015开始国内就开始慢慢接触Python了,从16年开始Python就已经在国内的热度更高了,目前也可以算的上"全民Pytho
- 在我们学习的过程中会遇到这么样的问题,就是在我们学习的过程中会发现需要分页处理,这里呢,给大家介绍书上说的分页。@app.route(
- 本文深入分析了Symfony控制层。分享给大家供大家参考,具体如下:Symfony中控制层包含了连接业务逻辑与表现的代码,控制层为不同的使用
- Deferred对象结构Deferred由一系列成对的回调链组成,每一对都包含一个用于处理成功的回调(callbacks)和一个用于处理错误
- 一直以来,jQuery是我最喜欢的框架之一。1月14号 1.4 Released版本发布后,就迫不及待去了解了一下1.4版本对比以往1.3.
- 前言:相比大家都听过自动化生产线、自动化办公等词汇,在没有人工干预的情况下,机器可以自己完成各项任务,这大大提升了工作效率。编程世界里有各种
- ★二维数组的使用方式:先声明或者定义,再赋值1)语法:var 数组名[大小][大小]类型2)比如:var arr[2][3]int[][]两
- 一、简介time模块提供各种操作时间的函数说明:一般有两种表示时间的方式:第一种是时间戳的方式(相对于1970.1.1 00:00:00以秒
- 译序:这篇文章是可用性大师 Jakob Nielsen 在10年前总结的,到今天仍然受用。通过这个时间跨度,可以得出,可用性话题不是某个时代
- Python入门教程FROM:http://www.cnblogs.com/taowen/articles/11239.aspx作者:tao
- 互联网充斥着枯燥的设计,惠普、IBM、戴尔、微软,以及其他数不尽的网站(相似的布局,相似的配色)。可能有人会说通过这样一种标准化的界面可以使
- WebSocket - 开启通往新世界的大门WebSocket是什么?WebSocket是一种在单个TCP连接上进行全双工通讯的协议。Web
- 一:操作redis1:redis拓展安装composer require predis/predis或者你也可以通过 PECL 安装&nbs
- 一 、精灵(Sprite),屏幕上的对象。精灵组是精灵的组合。创建空的精灵组对象:精灵组可以对其中的所有精灵调用它们各自的更新方法(self
- 1 捕捉一个异常捕捉一个异常 以用0作为除数会得到ZeroDivisionError异常为例,print(1/0)为例程序的持续执行,不因该
- 本文主要分析的是web.py库的application.py这个模块中的代码。总的来说,这个模块主要实现了WSGI兼容的接口,以便应用程序能
- 为了防止采集,我试过各种方法,绝大多数方法是“ * 剑”---防止了采集,也影响了搜索引擎收录,实在不爽!一天本人忽发奇想:何不
- 问题描述利用栈的数据结构实现将十进制数转换成二进制数C语言实现顺序表的存储结构实现栈代码:#include <stdlib.h>
- 在任何有监督机器学习项目的模型构建阶段,我们训练模型的目的是从标记的示例中学习所有权重和偏差的最佳值。如果我们使用相同的标记示例来测试我们的