C# windows服务知识集锦
最近公司项目,本人也是刚接触windows服务,现在把这两天上网学习的一些资料拿出来与大家分享。
1)、关于windows服务安装包的制作和自动启动服务
http://blog.csdn.net/rechan/article/details/7451638
http://www.cnblogs.com/hb_cattle/archive/2011/12/04/2275319.html
http://www.cnblogs.com/yangbingqi/archive/2011/08/09/2132166.html
http://www.cnblogs.com/JemBai/archive/2009/04/30/1446696.html
2)、关于windows服务如是进行调试。
http://www.cnblogs.com/qfb620/archive/2008/12/17/1356994.html
实际上,我们可以直接在OnStart()方法中通过EventLog.WriteEntry("Hi,I'm wiseman");来向事件查看器中写入一些你感兴趣的信息,很大程度上可以解决debug的问题.
3)、关于win7系统上安装问题需要注意的问题。
http://blog.csdn.net/dragonpeng2008/article/details/6653004
添加应用程序清单文件 app.manifest 只要把 asInvoker替换成requireAdministrator,我们的程序就会默认要求管理员权限运行了
特别注意,在运行vs Cmd工具的时候,一定要以管理员的身份运行,否则注册installutil命令将不会执行。
4)、在ProjectInstaller服务安装类中想通过App.config配置文件来动态读取Service1的Description和DisplayName和ServiceName和StartType信息时异常原因。
关于windwos服务,ProjectInstaller服务安装类中InitializeComponent方法是读取不到App.config文件的!!!
个人是这样理解的认为windwos服务应用程序是有系统sys32运行调用的,所以需要修改到安装服务进程所在的目录。
string strPath = Assembly.GetCallingAssembly().Location;
或者string strPath = Environment.CurrentDirectory
在Service1服务类中,完全可以用ConfigurationSettings.AppSettings["test"]或者ConfigurationManager.AppSettings["test"]方法来获取。
5)、windows服务调试小技巧。
可以叫错误信息输出到事件日志查看器中
EventLog eventLog =new EventLog("Application",
ApplicationConfiguration.EventLogMachineName, ApplicationConfiguration.EventLogSourceName );
//写入事件日志
eventLog.WriteEntry(messageText, LogEntryType);
最新文章
- 关于C#开发WEB项目TextBox控件的自适应高问题解决办法!
- Java入门记(四):容器关系的梳理(上)——Collection
- javascript使浏览器关闭前弹出确认
- window php redis扩展下载地址
- cobbler自动安装脚本
- Arduino CNC Shiled 和 DRV8825驱动板的注意事项
- 手动从浏览器中获取 cookie
- SQL Server 2012 连接到数据库引擎
- [转]关于strtok和strtok_r函数的深度研究
- C++Primer第5版学习笔记(二)
- [树结构]平衡二叉树AVL
- 【LeetCode题意分析&;解答】34. Search for a Range
- JavaScript的正则表达式
- POJ 1207 3N+1 Problem
- 5. SpringBoot —— Actuator简介
- Java第三次作业——面向对象基础(封装)
- 使用 Java 8 语言功能
- U890采购入库单修改供应商
- 6.2Python文件的操作(二)
- Spring学习笔记--Spring配置文件和依赖注入