[英]How can I add window Service in C#/ install it and Run exe(My Job.exe) through this Window Service?
其实我想通过C#中的窗口服务运行exe文件(我的Job.exe),但是启动计算机时应该自动启动窗口服务吗?
我已经手动添加了窗口服务(MyService)。 我还在我的应用程序的安装项目中添加了此服务,以便在安装我的应用程序时也可以进行安装。 我有带属性的serviceInstaller1
StartType=Automatic;ServiceName=MyService.
我也有带有属性的serviceProcessInstaller1
Account=LocalSystem;
运行此程序时,我的Applicationo已安装,但MyService未安装,并且在计算机管理服务中也没有看到它。
任何人都可以帮助我,我已经花了两天时间,但没有找到正确的指导方针。 提前致谢。
如何安装您的应用程序? 您是否为此创建了安装程序(.msi文件)? 听起来您正在尝试实现自己的安装程序,而不是使用现有工具来执行此操作。
我建议使用高级安装程序 。 它是一个非常强大的安装程序生成器,具有免费版本中所需的所有功能,更重要的是,它非常易于使用。 使用此工具,您可以创建具有修补和卸载软件(包括服务,注册表值,文件等)功能的安装向导。
我最近在VS2010和.Net 4.5中有一个带有Windows服务的项目,而用户操作系统将是Windows Server2008。很长一段时间我无法创建功能齐全的安装,但是我仍然没有,但是请求已更改,因此无需安装文件。 但我可以给您“如何做”的建议。 如果您尚未购买InstallShield版本,则需要找到其他一些用于创建安装文件的程序。 对于安装,您只需复制服务的.exe输出,一个批处理文件将具有下一个内容:
@ECHO off
"C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe" "%~dp0%<filename>.exe"
pause
然后您需要以管理权限运行此批处理文件。 两个文件(.exe和.bat)必须位于同一文件夹中。 您可以删除pause
命令,但随后将看不到服务注册是否成功。 确保已在PC上安装了目标.NET Framework。
希望对您有帮助。
如果您只需要在系统启动时运行exe文件(我的Job.exe),则可以将exe添加到Windows Task Scheduler中 。
使用Windows服务是否有特定目的?
我之所以这样说,是因为您可以使用多种选项来调用exe,如下所示
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.