gpt4 book ai didi

.net - 调试windows服务

转载 作者:行者123 更新时间:2023-12-01 08:20:08 24 4
gpt4 key购买 nike

我已经创建了一个 Windows 服务并手动安装了它。后来从服务工具启动了服务。现在我想从 Visual Studio IDE 调试 windows 服务应用程序。
当我尝试从 IDE 中的“调试”选项卡附加进程时,Windows 服务进程显示在列表中,但未突出显示以进行附加。
我应该附加到调试服务应用程序的任何其他主要进程。
任何相关信息张贴表示赞赏。

谢谢。

最佳答案

这并没有回答确切的问题,但是对于它的值(value),我发现开发和调试 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”参数即可,本地调试时总会弹出表单。这样您就不必担心附加到进程或类似的事情。您只需像往常一样单击“调试”,就可以开始了。

关于.net - 调试windows服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1982636/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com