尝试安装Windows服务时删除InstallUtil.exe

时间:2013-10-02 16:06:35

标签: .net windows windows-services

我正在开发一项Windows服务。所以我去尝试在我的机器上安装它:我打开一个开发人员命令提示符,我忘了以管理员身份运行。我将目录位置更改为服务项目的bin \ debug文件夹。在命令提示符中输入: D:\ code \ MyService \ bin \ Debug> C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ InstallUtil.exe MyService.exe

我收到一些我不记得的错误,但是这条消息让我想起我需要以管理员身份运行cmd窗口。所以我以管理员身份重新启动提示。再次输入与InstallUtil.exe相同的命令。这次返回的消息是“访问被拒绝”。

所以我查看了InstallUtil.exe文件,结果发现文件是0 kb,仅在几秒前修改过! ...已删除的可执行文件已被删除,只留下一个空文件??

而且,我不是唯一的一个:http://ilanas.blogspot.se/2007/02/net-wtf-installutilexe-gets-corrupted.html

任何人都有关于此的任何信息?

1 个答案:

答案 0 :(得分:5)

  

在命令提示符中输入:D:\ code \ MyService \ bin \ Debug> C:\ Windows ... \ InstallUtil.exe

亲爱的,这不是个好主意。您重新输入了命令提示符。 “>”是输出重定向运算符,它将输出发送到>后面的文件。在你的情况下InstallUtil.exe。您有Access Denied,因为您尝试执行文件夹,而不是有效的操作。但是,在InstallUtil.exe已被销毁之后会生成该消息。保留一个0字节的文件,因为实际上没有重定向的字节。

下次,重新输入命令提示符。 键入要运行的命令:

 C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe MyService.exe

从另一台计算机恢复InstallUtil.exe。