关于windows服务

 

最近学习写了一个widows服务程序,在其中遇到了一些问题。

首先是在打开服务控制管理数据库时候被拒绝,没有权限访问,最后发现是以你为操作系统权限管理的问题,因为在xp下没有这个问题,而跑到vista或者win7的时候就会出现这个问题,解决的方法是,如果是vista则关闭UCA,如果是win7就把账户管理的权限管理设置为最低即可。

然后是windows服务访问数据源,问题是在控制台调试通过的使用ODBC数据源访问数据库的代码到这里一直连接不到数据源,最后发现是数据源配置的问题,windows服务职能访问系统数据源,把数据源设置为系统数据源即可。

windows服务的启动,是不能在控制台启动的,服务函数必须是由操作系统调用的。

在学习的过程中还有:widows系统的服务在开机的过程中,在我们以某一个账户登录之前就已经启动了,windows操作系统启动的过程是:
首先启动服务,其实在登录之前各项必须得服务已经起来,无论你登不登录这些服务都会一直运行,感觉登录也是由一个系统服务控制的。就是说服务和登录是分离的。而用户数据源如果要访问必须是要先以某个用户的身份进行登录的。

之后还有写文件的方法,如果要向一个文件中如txt中写内容,在close掉打开的文件的时候才会从缓存中写入到这个文件,可以open一个文件,然后在while(1)循环中持续进行写入,打开这个文件就会发现没有写入,知道关闭这个程序的时候才又内容,如果在循环中每次都打开和关闭文件则每次都会写入。不用等到程序执行完毕就可以在文件中查看到内容。

你可能感兴趣的:(数据库,windows,XP)