Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.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 services Windows服务安装在回滚中结束_Windows Services - Fatal编程技术网

Windows services Windows服务安装在回滚中结束

Windows services Windows服务安装在回滚中结束,windows-services,Windows Services,当我尝试安装Windows服务时: c:\Windows\Microsoft.NET\Framework64\v4.0.30319\installutil 我得到了一些成功的信息和一些失败的信息。半路向下: An exception occurred during the Install phase. System.ComponentModel.Win32Exception: The specified service has been marked for deletion 最后: The

当我尝试安装Windows服务时:

c:\Windows\Microsoft.NET\Framework64\v4.0.30319\installutil

我得到了一些成功的信息和一些失败的信息。半路向下:

An exception occurred during the Install phase.
System.ComponentModel.Win32Exception: The specified service has been marked for deletion
最后:

The Rollback phase completed successfully.

The transacted install has completed.
The installation failed, and the rollback has been performed.
服务小程序中为该服务提供了一个条目,但它被标记为“已禁用”。当我试图将其更改为另一个状态时,会收到一条“标记为删除”的错误消息

事件日志中没有消息。installutil.exe创建的日志文件中没有任何有用的内容(我相信它已写入当前工作目录)


我没有这个方向。我该怎么办?

如果在“服务”小程序中突出显示该服务,安装可能会失败,也可能会失败。最安全的做法是关闭服务小程序,安装服务,然后重新打开服务小程序。这真的很愚蠢


另外,请确保以管理员身份运行控制台。

我也遇到过同样的问题,问题是已经安装了同名的服务。因此,为了安装新的服务,我必须卸载旧的服务。我正在学习如何创建和设置windows服务,从而避免命名冲突。尝试先通过以下方式卸载服务:

c:\Windows\Microsoft.NET\Framework64\v4.0.30319\installutil -u servicename.exe

一旦此语句成功执行,请安装您的服务,它将在不进行任何回滚的情况下成功。

再添加一些检查和点以解决上述问题

  • 在发布模式下生成服务,获取发布文件夹文件并保存在不同的路径中
  • 复制该路径并转到visual studio命令提示符窗口,然后运行下面的示例命令来安装该服务
  • 请关闭services.msc窗口(如果已打开),然后运行C:Program Files(x86)\Microsoft Visual Studio 11.0>InstallUtil.exe C:\RunLocationServices\TestService.exe
  • 转到services.msc并选择该服务,然后单击start,如果它更改为“started”,则您的服务运行正常
  • 如果问题仍然存在,则 另一个检查点和解决方案 当服务启动时,服务会向服务控制管理器告知服务必须启动多长时间(服务的超时时间)。 如果服务控制经理在此超时期间未收到来自服务的“服务启动”通知, 服务控制管理器终止承载服务的进程。 此超时时间通常小于30秒。 如果不调整此超时时间段,服务控制管理器将结束该过程。 要调整此超时周期,请执行以下步骤: 1.进入开始>运行>并键入regedit 2.导航到:HKEY\U LOCAL\U MACHINE\SYSTEM\CurrentControlSet\Control 选中控制文件夹后,在右侧窗格中单击鼠标右键,然后选择“新建DWORD值” 3.将新DWORD命名为:ServicesPipeTimeout 4.右键单击ServicesPipeTimeout,然后单击修改 单击Decimal,键入“180000”,然后单击OK 5.重新启动计算机


    如果问题仍然存在,那么您的服务代码中的问题可能会由于服务调用的方法/类而发生infinate循环。对每行代码进行检查。

    有时,由于权限问题,会出现这种情况。 以管理员身份运行“VS 2012的开发人员命令提示符”。
    然后它就会工作。

    这个问题是由于安全原因造成的,您最好打开VS 2012的开发者命令提示符:

    以管理员身份运行

    并安装您的服务。它肯定会解决你的问题


    我尝试了,问题得到了解决。

    右键单击命令提示符并选择以管理员身份运行
    然后复制并粘贴到:
    C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe C:\TestService\bin\Debug\TestService.exe

    TestService.InstallLog中的结果为:

    Installing service TestService...
    Service TestService has been successfully installed.
    

    如果我没记错的话,我已经卸载了该服务,但它在“服务”小程序中仍然突出显示。@DustinOprea如果该服务卸载成功,它不应该出现在您通过“Services.msc”窗口看到的服务列表中该窗口中有一个“刷新”操作,这是有原因的。然而,事情并不是那么简单。正如我已经提到的,已经足够长了,我不能再提供任何额外的见解了。这个该死的小程序真的很烦人,因为它总是碍手碍脚。在我的例子中,小程序没有突出显示服务,甚至没有关注服务选项卡-它是在事件查看器中。欢迎来到微软误导和混乱的错误信息的奇妙世界,我想?我不相信你最后的话@ajesh,但我也没有快乐。即使小程序完全关闭。我怎么能控制这该死的服务。我现在很沮丧!!哈哈,非常感谢你帮我弄明白了。“真蠢”是对的@事实上,我发现它令人欣慰的一致性。它的可能重复并没有什么区别。由于突出显示了其他内容而导致的中断是应用程序错误,而不是权限问题。