方法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调试了

最新文章

  1. 【Android】 修复ijkPlayer进行m3u8 hls流播放时seek进度条拖动不准确的问题
  2. ZOJ Problem Set - 3329(概率DP)
  3. [推荐]看图/图片管理软件XnViewMP
  4. LaTeX测试
  5. ASPxCallback控件
  6. python之类定义
  7. MFC中Listbox控件的简单使用
  8. Initializer block.
  9. tableview 编辑状态设置
  10. oracle删除用户所有的表
  11. js iframe问题
  12. java中驼峰与下横线格式字符串互转算法
  13. C语言预处理指令
  14. Swift编程语言学习2.1——基础运营商(在)
  15. IMP-00013 目前只有 DBA 其他导入能力 DBA 导出的文件
  16. [RM 状态机详解2] RMAppAttempt状态机详解
  17. Python的.py文件打包成exe可执行文件
  18. css选择器的优先级问题
  19. .Net Core的Log方式:Serilog+Kibana
  20. 1.6分布式通讯协议-WebService

热门文章

  1. JAVA中使用最广泛的本地缓存?Ehcache的自信从何而来 —— 感受来自Ehcache的强大实力
  2. Spark详解(07-1) - SparkStreaming案例实操
  3. P5683 [CSP-J2019 江西] 道路拆除
  4. iOS如何实现自动化打包
  5. [1]SpinalHDL安装环境
  6. JS控制台打印星星,总有你要的那一款~呐~给你小心心哦~~~❤
  7. Anaconda和pip常用命令汇总:简单,通俗易懂
  8. vue-3 this概念
  9. @ControllerAdvice解密请求,加密响应
  10. 高精度计算模板 -感谢acwing