首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Installutil安装服务

使用Installutil安装服务
EN

Stack Overflow用户
提问于 2012-04-24 16:57:56
回答 3查看 12.6K关注 0票数 2

我有WCF服务要安装在windows上。

现在我想把它安装在运行windows的服务器上,并且已经安装了v3.5 .net框架。

离题的是,服务是在框架4中编写的,因此它将不会运行。

我的问题是,我可以使用框架3.5中的"installutil“来安装服务吗?为什么?

=== UPDATED===

我有windows服务,这是运行wcf里面。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-04-24 17:30:17

您可以使用InstallUtil安装Windows服务。如果你遵循下面的MSDN文章How to: Host a WCF Service in a Managed Windows Service,你的WCF服务可能已经在Windows服务中开发出来了。

但是,如果(Windows4)服务是用Windows4编写的,而您试图从.NET 3.5运行安装程序,您将得到以下错误:

初始化安装时发生

异常: System.BadImageFormatException:无法加载文件或程序集的file:///C:\MyService.exe‘或其依赖项之一。此程序集是由比当前加载的运行库更新的运行库生成的,无法加载。

要安装Windows4(Windows4)服务,您需要使用安装了.NET 4的.NET 4安装程序,该程序将在: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\installutil.exe中提供。

票数 5
EN

Stack Overflow用户

发布于 2012-04-24 16:59:33

installutil用于安装windows服务而不是wcf服务。

票数 4
EN

Stack Overflow用户

发布于 2012-04-24 17:13:13

如果您可以控制构建服务,只需将其更改为针对.NET 3.5框架,您就应该能够安装它。

否则,如果服务是针对.NET Framework4.0构建的,而服务器只安装了.NET 3.5,我认为它不会运行,除非您在配置文件中显式覆盖它以在.NET 3.5下运行(我不推荐这样做)。

另外,我总是建议人们使用WiX Toolset来编写windows服务的安装程序,而不是使用InstallUtil,因为InstallUtil是一个自定义的,非标准的Visual Studio工具来安装Windows服务,而windows Installer (微星),Windows安装的认可标准,有内置的支持来安装经过试验和测试的Windows服务,并给你更多的控制,例如停止和启动服务等。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10294763

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档