用c#NET 4 vs2010编写的windows服务将不会安装在Server 2008 R2 Enterprise上

用c#NET 4 vs2010编写的windows服务将不会安装在Server 2008 R2 Enterprise上,c#,visual-studio-2010,.net-4.0,windows-services,hung,C#,Visual Studio 2010,.net 4.0,Windows Services,Hung,我编写了许多版本的windows服务,并将它们安装在运行Server 2008 R2 Enterprise的32 GB 64位系统上 我使用以下方法创建服务: “演练:在组件设计器中创建Windows服务应用程序” 我在Win 7笔记本电脑上创建了.msi和相应的setup.exe(c#,vs2010 SP1,.NET 4) 正常行为 在笔记本电脑上测试Windows服务后,我将.msi和setup.exe复制到win2008 R2企业服务器上的一个文件夹中(通过远程桌面使用复制和粘贴);我使

我编写了许多版本的windows服务,并将它们安装在运行Server 2008 R2 Enterprise的32 GB 64位系统上

我使用以下方法创建服务:

“演练:在组件设计器中创建Windows服务应用程序”

我在Win 7笔记本电脑上创建了.msi和相应的setup.exec#,vs2010 SP1,.NET 4

正常行为 在笔记本电脑上测试Windows服务后,我将.msi和setup.exe复制到win2008 R2企业服务器上的一个文件夹中(通过远程桌面使用复制和粘贴);我使用服务器的控制面板卸载,右键单击.msi并选择安装,然后浏览安装向导。没问题。大部分时间都在工作

异常行为 安装可能运行15分钟或更长时间;它永远不会结束;最后,一个对话框显示
“(?)安装程序不再响应。”
具有[重试]或[取消]选项

此时,进度条尽可能短,在最左侧,在“请等待…”的“p”下方

单击“重试”没有帮助。自从我点击“重试”按钮以来,已经有30多分钟的时间了,进度条甚至一个像素都没有提升

更多信息 (a) 该服务在另一台服务器(Win 2008 R2 web版)上安装时没有任何问题。
(b) 如上所述,Windows服务在我的Win 7开发和测试环境中安装并正常工作

历史/推测 几周前,我无法从Win2008R2企业服务器安装服务。我在控制面板/卸载中找不到它,尽管.msi声称它已安装,并且该服务也继续出现在services.msc控制台中。即使禁用该服务也无济于事。出于这个原因,我克隆了代码,稍微更改了服务名称,并成功地安装了已经运行了一段时间而没有出现问题的服务

今天,发生了一个类似的事件,唯一的区别是我可以在控制面板卸载中看到该服务。因为它不会卸载,我尝试了同样的克隆技巧,但这次失败了

下一步:使用上面的演练,我创建了一个什么都不做的Windows服务,并通过将我的客户机类从原始c#项目文件导入到该服务中使其变得有用

重新构建的Windows服务在我的笔记本电脑上按设计工作,但拒绝安装在R2企业服务器上

有什么想法吗

谢谢你

备注:我在so上发布了这篇文章,因为在将代码交付给系统管理员之前,开发人员很可能会遇到这种情况


顺便说一句,我找不到任何相关的,所以;通过谷歌也一样。

我对自己的MSI(不仅仅是服务)以及Win2k3和Win2k8上的第三方MSI有过类似的体验。如果不重新安装操作系统的话,我从来没有(曾经)彻底了解过它

和你一样,我也推测操作系统(注册表、文件系统、系统还原)的内部(组合或全部)丢失了一些东西


我知道这不是你想听到的,但是(如果可能的话)一个干净的操作系统安装可能会对你有好处。

在这个特殊的情况下,这是一个非常奇怪的服务器权限条件

更多信息

虽然我的服务器帐户不是管理员,但我是此2008 R2框的本地和域管理员的成员

我尝试了很多想法,包括在演练中创建示例并进行尝试。不走运

boxe的管理员可以使用installutil.exe安装我的服务,因此我尝试了installutil.exe,但它只适用于使用管理员凭据的我

出于这个原因,我怀疑这可能是一个权利问题,所以我尝试用我的凭据在H:\驱动器上安装演练示例。成功。接下来,我尝试在C:上的另一个位置安装麻烦的Windows服务。再次强调成功

这个问题最奇怪的是,很多时候我都没有问题,但突然出现了一个问题,阻碍了我的开发工作

Windows服务将要安装的一个标志是,在开始安装后几乎立即出现一个请求继续权限的对话框。成功的另一个线索是能够通过控制面板成功卸载任何以前的版本


我感谢大家在这方面帮助我的努力。谢谢。

您可以从安装日志或事件查看器添加更多信息吗?除了更改服务名称外,是否还更改了安装上的guid?尝试过任何工具来清理拙劣的安装吗?可能很难诊断,我感觉到你的疼痛。@qes“疼痛”描述得很好;幸运的是,我发现了这个案例中的问题。我希望最终能找到潜在的原因,尽管它最终可能只是一个未解之谜。安装本身并没有搞砸(因为看起来他们从来没有这么做过),但是卸载留下了一些片段,幸运的是这些片段可以被忽略(至少现在是这样)。谢谢你的宝贵意见;幸运的是,在这种情况下,这是不必要的,因为特定的2008 R2服务器是一个生产服务器,到目前为止还没有克隆来填补重新安装期间可能出现的空白。