Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows服务与安装项目一起安装时未显示_Windows_Vb.net_Web Services_Service - Fatal编程技术网

Windows服务与安装项目一起安装时未显示

Windows服务与安装项目一起安装时未显示,windows,vb.net,web-services,service,Windows,Vb.net,Web Services,Service,我在VS.NET2008和VB.net中开发了一个简单的windows服务。当我在命令提示符下使用Installutil.exe安装该服务时,它就像一个魔咒一样工作 当我尝试添加一个安装项目并设置输出、构建和安装它时,虽然它说已成功安装,但它没有显示在服务中 事件日志显示它已成功安装。我只是检查了注册表,它确实将程序集放在了HKEY\U CURRENT\U USER\Software\Microsoft\installer\Assemblys中 但我不明白为什么它没有出现在服务列表中。我刷新并重

我在VS.NET2008和VB.net中开发了一个简单的windows服务。当我在命令提示符下使用Installutil.exe安装该服务时,它就像一个魔咒一样工作

当我尝试添加一个安装项目并设置输出、构建和安装它时,虽然它说已成功安装,但它没有显示在服务中

事件日志显示它已成功安装。我只是检查了注册表,它确实将程序集放在了HKEY\U CURRENT\U USER\Software\Microsoft\installer\Assemblys中

但我不明白为什么它没有出现在服务列表中。我刷新并重新启动

有什么想法吗

谢谢

一些想法:

您是在试图运行它的同一个Windows帐户下安装的吗?是否已将安装项目的“InstallAllUsers”属性设置为True

是否确实在安装项目中正确设置了ProductName和Title属性?可能该服务以不同的名称出现在列表中,即“SetupProject1”或其他名称

类似地,在服务的ProjectInstaller类的“设计”视图中,查看ServiceInstaller的属性,并确保ServiceName和DisplayName属性设置为所需的属性。

找到了解决方案 您必须在MSI项目中添加自定义操作。 因此,在自定义操作中,将服务的输出添加到安装部分。这将为您的服务运行所需的安装代码。i、 e.与installutil.exe的功能相同


感谢所有的帮助

我遇到了同样的问题,在创建安装项目之前没有注意到这一部分。

为您的服务创建安装程序

在解决方案资源管理器中,右键单击Service1.vb或Service1.cs并选择视图设计器

单击设计器的后台以选择服务本身,而不是其任何内容

在设计器处于焦点的情况下,单击鼠标右键,然后单击“添加安装程序”

默认情况下,包含两个安装程序的组件类将添加到项目中。该组件名为ProjectInstaller,它包含的安装程序是服务的安装程序和服务关联进程的安装程序

在ProjectInstaller的设计视图中,单击ServiceInstaller1或ServiceInstaller1

在“属性”窗口中,确保ServiceName属性设置为MyNewService

将StartType属性设置为Automatic


在设计器中,单击ServiceProcessInstaller1(对于Visual Basic项目)或ServiceProcessInstaller1(对于Visual C#项目)。将Account属性设置为LocalSystem。这将导致服务在本地服务帐户上安装和运行。

谢谢。我确实检查了InstallAllUsers是否正确,productname和title是否正确。即使在serviceinstaller中,它也是正确的。我甚至重新启动了我的机器。Eventlog显示服务已成功安装。此步骤并没有真正帮助我解决问题,下面rowmark发布的解决方案是我案例中缺少的步骤。别忘了在“卸载”部分执行相同的操作,否则卸载软件会让“重影”服务出现。我也这样做了。软件被复制到正确的位置,但服务没有显示在列表中。我跳过了在服务项目本身中为服务创建安装程序的步骤。这最终为我解决了问题(获得了正确的服务名称),但还必须添加rowmark所描述的自定义操作,否则根本就没有服务出现。也帮我解决了