在Windows Server 2012上的交互式服务出现问题

我有一个服务(一个旧的基于4D的应用程序),它已经在Windows Server 2003上快乐地运行。随着2003年的待定EOL,我试图迁移到一个新的2012R2主机。

我使用sc命令来设置服务,如type= own, type= interact 。 从services.msc启动服务时,将显示启动消息并缓慢移动,直到它宣布启动服务失败。 进度条运行时,服务似乎正常运行。 一个错误显示服务被杀害。

在Server 2003交互模式下需要运行服务,因为它会打开一个状态/控制窗口在会话0上。我知道这个function已经改变,在Server 2008+上已经被弃用,我相信这是我的问题的根源。

无论如何,要改善Server 2012上的交互式服务兼容性吗?

以下技术提示: 4D Server作为Window Server 2012上的服务可能会有所帮助:


技术提示: 在Windows上作为服务运行时访问4D服务器窗口说明在Windows上作为服务运行时必须采取的步骤才能与4D Server交互。

Window Server 2012的默认设置有所改变,它增加了一些步骤,以便能够在作为服务运行时与4D Server进行交互。

social.technet.microsoft.com上的以下文章解释了在上面提到的技术提示中的步骤之前,Windows Server 2012必须采取的第一步。

Windows Server 2012不再允许交互式服务,默认情况下,这使交互式服务检测服务不必要。

如果您必须运行在Windows Server 2012上安装交互式服务的旧式应用程序,则可以通过将以下registry值从“1”更改为“0”来牺牲服务器的兼容性。

 HKLM\SYSTEM\CurrentControlSet\Control\Windows NoInteractiveServices 

这样做并重新启动后,交互式服务检测服务将启动。