Windows系统配置python脚本开机启动的3种方法分享


Posted in Python onMarch 10, 2015

测试环境: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 创建快捷方式;

Windows系统配置python脚本开机启动的3种方法分享

1.2 将创建的快捷方式放入开始菜单启动项;

Windows系统配置python脚本开机启动的3种方法分享

1.3、开机验证;

Windows系统配置python脚本开机启动的3种方法分享

2、隐藏命令行窗口启动

上述操作方法有命令行窗口,有些场合感觉不太实用,我们可以通过以下两种方式去掉命令行窗口。

2.1 将python脚本的文件扩展名改为".pyw"

Windows系统配置python脚本开机启动的3种方法分享

其它操作和上述过程类似,这里不再赘述。

2.2 通过vbs之类的脚本启动

vbs代码如下:

Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c E:\test1.py",vbhide
路径根据具体情况进行配置,其它的和之前的操作类似,这里不再赘述。

如果不想用快捷方式的话,把脚本直接放入启动项也可以。

附:

配置账户自动登录

通过开始菜单启动项来实现的话,必须进行相应保证用户登录系统,这里介绍一种账户自动登录的方法。

a、 在运行框中键入“Rundll32 netplwiz.dll,UsersRunDll”;

Windows系统配置python脚本开机启动的3种方法分享

b、 打开用户账户界面,将“要使用本机,用户必须输入用户名和密码”前面的勾去掉,按”确定“后输入需要自动登录的用户名和密码;

Windows系统配置python脚本开机启动的3种方法分享

二、开机脚本

不能用循环,最好配置超时时间。
测试代码(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 设置”=>“脚本”=>“启动”选项;

Windows系统配置python脚本开机启动的3种方法分享

c、选择脚本;

Windows系统配置python脚本开机启动的3种方法分享

d、配置脚本最长等待时间,路径为“计算机配置”=>“管理模版”=>“系统”=>“脚本”=>“组策略脚本的最长等待时间”;

Windows系统配置python脚本开机启动的3种方法分享

三、通过一个服务调用该脚本

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
Python 相关文章推荐
python检测lvs real server状态
Jan 22 Python
Python中使用ConfigParser解析ini配置文件实例
Aug 30 Python
python中正则表达式的使用详解
Oct 17 Python
selenium使用chrome浏览器测试(附chromedriver与chrome的对应关系表)
Nov 29 Python
对python中字典keys,values,items的使用详解
Feb 03 Python
python画图--输出指定像素点的颜色值方法
Jul 03 Python
详解使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件
Aug 23 Python
Python中的单下划线和双下划线使用场景详解
Sep 09 Python
Pytorch十九种损失函数的使用详解
Apr 29 Python
tensorflow基于CNN实战mnist手写识别(小白必看)
Jul 20 Python
Python实现列表索引批量删除的5种方法
Nov 16 Python
Python 里最强的地图绘制神器
Mar 01 Python
Python自动化构建工具scons使用入门笔记
Mar 10 #Python
Python操作CouchDB数据库简单示例
Mar 10 #Python
Python性能优化技巧
Mar 09 #Python
Python中的赋值、浅拷贝、深拷贝介绍
Mar 09 #Python
Python自动连接ssh的方法
Mar 07 #Python
Python最长公共子串算法实例
Mar 07 #Python
Python复制目录结构脚本代码分享
Mar 06 #Python
You might like
php模拟asp中的XmlHttpRequest实现http请求的代码
2011/03/24 PHP
php页面跳转代码 输入网址跳转到你定义的页面
2013/03/28 PHP
PHP随机生成信用卡卡号的方法
2015/03/23 PHP
php需登录的文件上传管理系统
2020/03/21 PHP
php实现简单加入购物车功能
2017/03/07 PHP
PHP截取发动短信内容的方法
2017/07/04 PHP
Apache+PHP+MySQL搭建PHP开发环境图文教程
2020/08/06 PHP
JavaScript实现的背景自动变色代码
2015/10/17 Javascript
JS三级可折叠菜单实现方法
2016/02/29 Javascript
nodeJS删除文件方法示例
2016/12/25 NodeJs
原生js实现放大镜特效
2017/03/08 Javascript
js实现一个猜数字游戏
2017/03/31 Javascript
利用Three.js如何实现阴影效果实例代码
2017/09/26 Javascript
全新打包工具parcel零配置vue开发脚手架
2018/01/11 Javascript
webpack打包并将文件加载到指定的位置方法
2018/02/22 Javascript
vue使用监听实现全选反选功能
2018/07/06 Javascript
Angular实现svg和png图片下载实现
2019/05/05 Javascript
vue-router的hooks用法详解
2020/06/08 Javascript
[02:31]2018年度DOTA2最具人气选手-完美盛典
2018/12/16 DOTA
Python的一些用法分享
2012/10/07 Python
Python简单实现阿拉伯数字和罗马数字的互相转换功能示例
2018/04/17 Python
Opencv+Python实现图像运动模糊和高斯模糊的示例
2019/04/11 Python
Python列表切片常用操作实例解析
2019/12/16 Python
python读取图片颜色值并生成excel像素画的方法实例
2021/02/19 Python
Turnbull & Asser官网:英国皇室御用的顶级定制衬衫
2019/01/31 全球购物
软件工程师面试题
2012/06/25 面试题
门前三包责任书
2014/04/15 职场文书
电子信息专业应届生自荐信
2014/06/04 职场文书
2014国庆节主题活动方案:快乐的国庆节
2014/09/16 职场文书
八项规定自查自纠报告及整改措施
2014/10/26 职场文书
2014年挂职干部工作总结
2014/12/06 职场文书
干部个人考察材料
2014/12/24 职场文书
离婚起诉书怎么写
2015/05/19 职场文书
青年岗位能手事迹材料(2016推荐版)
2016/03/01 职场文书
python 如何用terminal输入参数
2021/05/25 Python
使用PostGIS完成两点间的河流轨迹及流经长度的计算(推荐)
2022/01/18 PostgreSQL