C# InstallUtil在安装自定义Windows服务时失败

C# InstallUtil在安装自定义Windows服务时失败,c#,visual-studio-2012,windows-services,installutil,C#,Visual Studio 2012,Windows Services,Installutil,我正忙于编写自定义Windows服务来处理服务器上的MSMQ消息,但安装(使用InstallUtil)一直失败,出现以下错误: “System.InvalidOperationException:无法在中获取安装程序类型 “x”.exe程序集。内部异常 与一起引发System.Reflection.ReflectionTypeLoadException 以下错误消息:无法加载一个或多个请求的 类型。有关详细信息,请检索LoaderExceptions属性。“ 我正在服务中使用我自己的3个程序集。

我正忙于编写自定义Windows服务来处理服务器上的MSMQ消息,但安装(使用InstallUtil)一直失败,出现以下错误:

“System.InvalidOperationException:无法在中获取安装程序类型 “x”.exe程序集。内部异常 与一起引发System.Reflection.ReflectionTypeLoadException 以下错误消息:无法加载一个或多个请求的 类型。有关详细信息,请检索LoaderExceptions属性。“

我正在服务中使用我自己的3个程序集。所有这些程序集都设置为“复制本地”,所有其他引用的程序集都位于GAC中。我已验证GAC中未包含的所有其他引用程序集是否位于包含my services.exe文件的文件夹中

我还尝试过在我的程序集上签名(如果有价值的话…)

我也环顾了谷歌,但在大多数情况下,问题要么通过服务包解决,要么通过安装一些专有软件解决,这显然解决了缺失的依赖性问题

我编写了一个简单的POC服务,没有引用任何工作正常的“外部”程序集

我正在Windows7机器上开发和测试

有什么想法吗? 谢谢

编辑: 好吧,奇怪。。。我使用PostSharp进行异常处理和日志记录。。。我删除了对PostSharp和我的方面的引用,并且它的安装没有问题。。。欧欧欧
有没有任何理由说明像PostSharp这样的东西不能很好地使用Windows服务

在没有安装程序的情况下,您是否尝试过向所有依赖程序集注册服务?您成功注册了吗? 如果这起作用,那么-
您的服务注册操作是否是安装创作步骤中的安装后完成操作?

好的,我发现了问题。。。我在一个方法中应用了两次相同的PostSharp方面。因此,我使用了
Method1
Method2
,它们都应用了
[MyException]
方面
Method1
调用
Method2
,因此该特性被“应用”了两次,这与服务安装程序不太匹配。我从
Method2
中删除了这个特性,一切都很好

对不起我的英语。我在这个问题上花了2天时间,发现只有当installutil和服务及依赖项文件位于一个目录中时,installutil才能工作

installutil服务->工作正常 如果ServicePath目录中存在依赖项,则installutil ServicePath\service->不起作用