随笔——写windows服务的时候如何调试 c# .net
2024-09-08 13:17:47
流程
1、更改项目 应用程序——输出类型——windows应用程序 改为 控制台应用程序
2、Program启动类中添加调用代码
3、服务类里面添加启动方法去启动OnStart和 Console.ReadLine();停止OnStop方法。
操作
1、更改项目
2、Program添加代码
/// <summary>
/// 应用程序的主入口点。
/// </summary>
static void Main()
{
#if DEBUG
//调试的时候记得把 应用程序——输出类型——windows应用程序 改为 控制台应用程序
if (Environment.UserInteractive)
{
Service1 service1 = new Service1();
service1.TestStartupAndStop();
}
#endif
#if !DEBUG
//下面这块是调用服务的,创建服务自动生成的
ServiceBase[] ServicesToRun;
ServicesToRun = new ServiceBase[]
{
new Service1()
};
ServiceBase.Run(ServicesToRun);
#endif }
3、服务类里面添加方法调用start和stop
/// <summary>
/// 添加个内部方法,用于调试
/// </summary>
/// <param name="args"></param>
internal void TestStartupAndStop()
{
#if DEBUG
this.OnStart(new string[0]);
Console.ReadLine();
this.OnStop();
#endif
}
最新文章
- 暴力枚举 + 24点 --- hnu : Cracking the Safe
- 连载《一个程序猿的生命周期》-28、被忽悠来的单身HR(女同志)
- MySQL安装常见问题(找不到文件,系统服务无法启动...)
- 论--如何通过代码解析plist文件创建对应的控制器,以及控制器中的控件
- /sbin/ifup: configuration for eth0 not found解决
- RequireJs 深入理解
- linux 安装nodejs
- android 使用asm.jar将android手机屏幕投射到电脑
- hdu 2159
- 【Unity 3D】教程(1)建立场景
- mysql的基本使用命令
- 【linux】vim常用操作及vim插件的安装使用
- HDU 4638 Group(莫队)题解
- LRN(local response normalization--局部响应标准化)
- 实现自己的ls命令
- Week8——hashcode()和equals()方法
- 极域电子教室3个没被发现的bug(V6 2007)
- WCF技术
- mysql 导出数据导致锁表
- jenkins配置邮件报警
热门文章
- 阿里云Centos7部署私人CSGO服务器
- 2020年12月-第01阶段-前端基础-HTML CSS 项目阶段(二)
- day01-项目开发流程
- ProxySQL 使用情况报错问题汇总及解决办法
- 使用Logstash把MySQL数据导入到Elasticsearch中
- git commit 规范
- Java SE 19 虚拟线程
- 老杜MySql——34道作业题
- abstract关键字的使用
- 编写一个jsp页面,利用Scriptlet编写一段计算代码,要求用零作为除数,并使用page指令将错误信息显示在另外一个jsp页面,产生的错误信息为“错误,不能用0做除数”