|
|
1
2
我喜欢控制台应用程序的方法。我通常会设置一些东西,这样我就可以通过一个开关,比如-无人值守,它会抑制控制台屏幕。 |
|
|
2
1
Windows服务将是一个不错的选择,它在后台运行,无论您是否关闭当前会话,您也可以将其配置为在Windows重新启动后在服务器上执行修补程序更新时自动启动。您可以将重要消息记录到事件查看器或数据库表中。 |
|
|
3
1
对于这样的事情,标准的方法是使用Windows服务。您希望该服务在网络帐户上运行,因此不需要登录用户。 |
|
|
4
1
几年前我做过一件类似的事情。从逻辑上讲,我需要一个服务,但有时我需要看看发生了什么,通常我想要一个历史。所以我开发了一个服务来完成这项工作,它在任何时候想要记录日志,就调用它的订户(实现为一个观察者模式)。 该服务注册了自己的数据记录器(写入数据库),在运行时,用户可以运行一个GUI,通过远程处理连接到该服务,从而成为一个实时侦听器! |
|
|
5
1
我将投票支持Windows服务。管理这些控制台应用程序将是一件非常痛苦的事情。 Windows服务部署很简单:初始安装后,您只需关闭它们并执行XCOPY。无需运行任何复杂的安装程序。第一次它只是半复杂的,即使在那时它也只是
将服务配置为在域帐户下运行,以实现最佳安全性和与其他计算机的最简单互操作。 对重要通知使用事件日志(包含错误、警告和信息)的组合,只需将详细日志转储到文本文件。 |
|
|
6
1
它将允许您以命令行或windows服务的形式运行程序。 |
|
|
7
0
|
|
|
8
0
我们经常使用windows服务作为后台进程。我不喜欢命令行应用程序,因为您需要登录服务器才能运行它们。服务一直在后台运行(假设它们是自动启动的)。在windows中安装sc.exe命令行工具也很简单。与installutil.exe相比,我更喜欢它。当然installutil做的更多,但我不需要它做什么。我只想注册我的服务。 我们还创建了一个基础设施,其中有一个基于接口定义加载.DLL的通用服务.exe,因此添加一个新的“服务”就像放入一个新的DLL并重新启动服务主机一样简单。 然而,我们开始远离服务。我们的问题是,它们会锁定DLL(原因很明显),因此升级它们很痛苦。我们需要停止,升级,然后重新启动。不难,但需要额外的步骤。相反,我们在asp.net应用程序中移动到特殊的“页面”,这些页面运行我们需要完成的实际后台工作。仍然有一个服务,但它所做的一切都是调用asp.net页面,这样它就不会锁定任何DLL。然后,我们可以替换asp.net bin目录中的DLL以及应用程序域重新启动的正常asp.net规则。 |