.net – 调试Windows服务

我已经创建了一个Windows服务并手动安装它.后来从服务工具启动了该服务.现在我想从Visual Studio IDE中删除Windows服务应用程序.
当我尝试从IDE中的“调试”选项卡附加进程时,Windows服务进程将显示在列表中,但不突出显示要附加.
是否有任何其他主要过程我应该附加到调试服务应用程序.
发布任何相关信息表示赞赏.

谢谢.

这并没有回答确切的问题,但是对于它的价值,我发现开发和调试Windows服务的最简单方法是将所有逻辑放入类库中,然后从Windows服务调用逻辑(在生产中)或从常规窗体形式(在开发期间). Windows窗体将具有“开始”和“停止”按钮,该按钮将模拟服务的启动和停止行为.

为了便于在两种模式之间切换,我只使用命令行参数并在Main方法中处理它,如下所示:

static class Program
{
    /// <summary>
    /// The main entry point for the application.
    /// </summary>
    private static void Main(string[] args)
    {
        if (args.Length > 0 && args[0] == "/form")
        {
            var form = new MainForm();
            Application.Run(form);
            return;
        }

        var servicesToRun = new ServiceBase[]
        {
            new BackgroundService()
        };

        ServiceBase.Run(servicesToRun);
    }
}

然后在Visual Studio项目属性的“命令行参数”字段中,您只需添加“/ form”参数,它将始终在本地调试时弹出窗体.这样您就不必担心附加到进程或类似的任何内容.你只需像往常一样单击Debug,你就可以了.

相关文章

(1)when you ping a computer from itsafe,the ping command should return the local IP address. (...
1、点击win菜单,点击设置图标 2、选择系统选项 3、选择应用与程序选项 4、拉到最下方,选择程序与功能...
目前一直直接往Windows 2008 R2 Server中复制文件(暂时还没有搭建ftp服务),突然不能复制了,于是百度...
windows下使用vscode配合xebug调试php脚本 要下载有php_xebug.dll扩展的版本,最新版可能没有这个扩展,p...
在控制面板的程序与功能里启用和关闭windows功能打开,适用于linux的windows子系统
效果演示 推荐一个非常牛的文档网站生成器:docsify 我通过这个工具,成功将码云上的个人学习笔记发布到...