|
1
9
我怀疑您的测试项目配置为windows exe,而不是控制台exe。使用windows exe
当然,您也可以使用命令行开关。我举了一个例子 microsoft.public.dotnet.languages.csharp
取决于开关 |
|
|
2
2
我以前通过实现一个普通的Windows服务(通过从ServiceBase派生)实现了这一点,但是在main方法中加入了一个检查来检查命令行参数。
如果参数包含
|
|
3
2
我的建议?将服务的所有逻辑放在单独的程序集中。(一个类库或DLL。)然后创建一个项目作为服务,它引用您的类库并将代码作为服务使用。创建第二个控制台项目,该项目也引用您的类库,但将使其作为控制台应用程序可用。 在您的解决方案中,最终会有三个不同的项目,但它确实允许您将事情分开。事实上,这也可以将您的服务扩展到其他几种形式。例如,您可以创建第四个项目作为web服务,从而从客户端系统上的web浏览器调用您的服务。因为软件逻辑与使用逻辑是分离的,所以您可以对其进行大量控制。 请注意,服务的运行可能比控制台应用程序有更多的限制。通常,服务在默认情况下不具有网络访问权限,也没有为其分配用于显示错误消息的监视器,并且通常使用有限的用户帐户或系统帐户运行。您的服务可能作为一个控制台工作,但作为一个服务失败,因为这一点。 |
|
|
4
1
Brian Noyes' Debuggable Self-Host Windows Service Project 博客文章-它谈论WCF,但应该适用于任何“Windows服务”。 最好的东西是示例代码——如果您不能找出上面的示例“适合”的地方,请抓取完整的项目,看看它是如何工作的。谢谢 Brian |
|
|
A B · C#Excel自动调整列避免长文本时出错 1 年前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 1 年前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |