Windows Service调试方法小结
2024-10-21 10:17:34
方法1:log记录
这是一个通用的调试方法,效率比较低,但比较实用,通过查看日志,总能达到调试的目的
方法2:附加到进程
这是Windows Service程序调试的常用方法,缺点是对Windows环境要求较高,也有失灵的时候
方法3:编辑Main()方法
1.注释原有程序自动生成的Main()方法体
2.按照实际的服务名创建实例,改变OnStart()方法修饰符为public,使得对象可以直接调用。
static void Main()
{
//ServiceBase[] ServicesToRun;
//ServicesToRun = new ServiceBase[]
//{
// new Service1()
//};
//ServiceBase.Run(ServicesToRun);
Service1 service = new Service1();
service.OnStart(); }
//protected override void OnStart(string[] args)
public void OnStart()
{
FileStream fs = new FileStream(@"f:\xx.txt", FileMode.OpenOrCreate, FileAccess.Write);
StreamWriter sw = new StreamWriter(fs);
sw.BaseStream.Seek(0, SeekOrigin.End);
sw.WriteLine("WindowsService: Service Started" + DateTime.Now.ToString() + "\n"); sw.Flush();
sw.Close();
fs.Close();
这样,就可以设置断点,按F5调试了
最新文章
- 【Android】 修复ijkPlayer进行m3u8 hls流播放时seek进度条拖动不准确的问题
- ZOJ Problem Set - 3329(概率DP)
- [推荐]看图/图片管理软件XnViewMP
- LaTeX测试
- ASPxCallback控件
- python之类定义
- MFC中Listbox控件的简单使用
- Initializer block.
- tableview 编辑状态设置
- oracle删除用户所有的表
- js iframe问题
- java中驼峰与下横线格式字符串互转算法
- C语言预处理指令
- Swift编程语言学习2.1——基础运营商(在)
- IMP-00013 目前只有 DBA 其他导入能力 DBA 导出的文件
- [RM 状态机详解2] RMAppAttempt状态机详解
- Python的.py文件打包成exe可执行文件
- css选择器的优先级问题
- .Net Core的Log方式:Serilog+Kibana
- 1.6分布式通讯协议-WebService