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实现下载网易云音乐的高清MV
Mar 16 Python
python中字符串前面加r的作用
Jun 04 Python
python负载均衡的简单实现方法
Feb 04 Python
python微信公众号开发简单流程
Mar 23 Python
Python爬虫包BeautifulSoup简介与安装(一)
Jun 17 Python
用Pycharm实现鼠标滚轮控制字体大小的方法
Jan 15 Python
安装Pycharm2019以及配置anconda教程的方法步骤
Nov 11 Python
浅谈keras保存模型中的save()和save_weights()区别
May 21 Python
Python调用C语言程序方法解析
Jul 07 Python
浅析Python面向对象编程
Jul 10 Python
Python中实现一行拆多行和多行并一行的示例代码
Sep 06 Python
Python实现列表索引批量删除的5种方法
Nov 16 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自动获取字符串编码函数mb_detect_encoding
2011/05/31 PHP
php把session写入数据库示例
2014/02/26 PHP
thinkPHP3.2.2框架行为扩展及demo示例
2018/06/19 PHP
thinkphp中常用的系统常量和系统变量
2014/03/05 Javascript
Node.js+Express配置入门教程详解
2016/05/19 Javascript
AngularJs学习第五篇从Controller控制器谈谈$scope作用域
2016/06/08 Javascript
js实现登录框鼠标拖拽效果
2017/03/09 Javascript
在Vue中使用echarts的实例代码(3种图)
2017/07/10 Javascript
JS模拟超市简易收银台小程序代码解析
2017/08/18 Javascript
详解node+express+ejs+bootstrap构建项目
2017/09/27 Javascript
详解JS数值Number类型
2018/02/07 Javascript
小程序实现短信登录倒计时
2019/07/12 Javascript
Vue使用vue-recoure + http-proxy-middleware + vuex配合promise实现基本的跨域请求封装
2019/10/21 Javascript
用js限制网页只在微信浏览器中打开(或者只能手机端访问)
2020/12/24 Javascript
JS 设计模式之:单例模式定义与实现方法浅析
2020/05/06 Javascript
js实现简易ATM功能
2020/10/27 Javascript
Vue中computed和watch有哪些区别
2020/12/19 Vue.js
[14:51]DOTA2 HEROS教学视频教你分分钟做大人-卓尔游侠
2014/06/13 DOTA
基于Linux系统中python matplotlib画图的中文显示问题的解决方法
2017/06/15 Python
解决phantomjs截图失败,phantom.exit位置的问题
2018/05/17 Python
django2笔记之路由path语法的实现
2019/07/17 Python
python多线程与多进程及其区别详解
2019/08/08 Python
Django和Flask框架优缺点对比
2019/10/24 Python
Python OpenCV图像指定区域裁剪的实现
2019/10/30 Python
利用CSS3实现毛玻璃效果示例源码
2016/09/25 HTML / CSS
css3的transition属性详解
2014/12/15 HTML / CSS
Christys’ Hats官网:英国帽子制造商
2018/11/28 全球购物
手工制作的意大利礼服鞋:Ace Marks
2018/12/15 全球购物
丧事主持词大全
2014/04/02 职场文书
党务公开方案
2014/05/06 职场文书
岗位职责说明书
2014/05/07 职场文书
2014年档案管理工作总结
2014/11/17 职场文书
幼儿教师个人总结
2015/02/05 职场文书
2015应届毕业生求职信范文
2015/03/20 职场文书
新闻报道稿范文
2015/07/23 职场文书
Golang 正则匹配效率详解
2021/04/25 Golang