用托管C++编写Windows服务
Name)\$(TargetFileName).config
为了读取配置,可在OnStart()或mainLoop()中循环之前加入相应的代码,在此倾向于尽可能地保持OnStart()为空,因此在mainLoop()中加入以下代码:
而循环则如下所示:
因为到了事先约定的时间,只想要上述代码运行一次,因此,在服务执行完相应的任务之后,必须把rantoday标志设为true,只要在其他时间,都会被设为false。 你可以在服务中查找数据库的新记录、或查找过期的文件并删除它们,当然,在服务中可以做的事情远远不只这些。但不管要执行的任务是什么,都需要告诉其他人你做过什么,因为服务不具备一个用户界面,所以也不能弹出一个消息框,因此,使用事件日志是一个不错的方法。 请在mainLoop()的循环之前加入以下代码,以用于设置事件日志记录:
虽然不用同时设置日志和源代码,但这样做的话,消息会在服务器浏览器的事件日志之下,创建它们自己的节点。 为向日志中写入,通常只需一行代码--可把它放在"执行相应任务"的注释之后: log->WriteEntry("服务的运行时间到了。", Diagnostics::EventLogEntryType::Information); 现在,我们大功告成:一个可以安装、卸载、启动、停止,并每天向事件日志中写入一条信息的服务诞生了!从此以后,你将无坚不摧,用C++编写的Windows服务可不像其他那些 .NET应用程序,它只局限于你的想像力。另外,在创建服务工程时,还要注意分清C++与VB及C#之间的细微差别。还等什么呢,赶快动手啊! |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |