python怎么操作windows服务?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python怎么操作windows服务?相关的知识,希望对你有一定的参考价值。
我有个程序,必须不间断运行,它是以windows服务形式启动的,但是有时候会自动停掉,我要做的是,用python写个程序,每隔一段时间检查一下这个服务是否启动,如果那个服务没有启动,就启动它。
参考技术A 楼主怎么又来问这个问题?不是已经问过一遍了吗?这么久还没有搞定?svcdorun运行结束就表示系统服务“停止”,怎么会重新运行?
上面的程序在开始添加两行代码:
import
time
timeout
=
10
#此处是延时时间,单位秒
改写部分代码:
def
__init__(self,
args):
win32serviceutil.serviceframework.__init__(self,
args)
self.running
=
true
def
svcdorun(self):
while
self.running:
#调用你的程序代码或者函数,以下的部分是计时代码
i
=
0
while
self.running
and
(i<timeout):
time.sleep(1)
i
+=
1
def
svcstop(self):
self.running
=
false
这三个函数完全替代原有的代码
代码
import
win32event
可以去除
计时代码之所以不直接写
time.sleep(timeout),主要原因是当timeout比较长时,会引起停止服务时失败,windows系统在停止服务时会有一定的等待时间,但时间不长,现在的计时代码是一秒钟检查一次是否停止,肯定不会带来问题。
在windows上的python 连接 linux 并做点操作
如题,我现在是在windows下的python2.7下,想连接远程的linux服务器,然后做点操作,我想问下,这个连接,怎么弄?搜了很多都是说不支持pexpect,然后我下了 winpexpect1.6 可是下载后,都是些文件,我不知道怎么放到 python下面去,有没有什么代码例子,包括需要什么库,简单的例子就行
参考技术A 访问SqlServer复制代码代码如下:
>>> import pyodbc
>>>cnxn = pyodbc.connect('DRIVER=SQL Server;SERVER=192.168.1.100\\sql;DATABASE=testDB;UID=sa;PWD=myPassword')
>>>cursor = cnxn.cursor()
>>>cursor.execute("select * from Tb")
二、Linux下配置Python访问SqlServer
环境:CentOS 6.2 + Sqlserver 2008
1、安装freetds:
复制代码代码如下:
yum install freetds*
2、安装pyodbc:
复制代码代码如下:
yum install pyodbc
修改odbc配置:
复制代码代码如下:
vi /etc/odbcinst.ini
添加FreeTDS驱动:
复制代码代码如下:
[SQL Server]
Description = FreeTDS ODBC driver for MSSQL
Driver = /usr/lib/libtdsodbc.so
Setup = /usr/lib/libtdsS.so
FileUsage = 1
3、测试
复制代码代码如下:
#python
>>> import pyodbc
>>>cnxn = pyodbc.connect('DRIVER=SQL Server;SERVER=192.168.1.100\\sql;DATABASE=testDB;UID=sa;PWD=myPassword')
>>>cursor = cnxn.cursor()
>>>cursor.execute("select * from Tb")
以上是关于python怎么操作windows服务?的主要内容,如果未能解决你的问题,请参考以下文章