Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在.NET 3.5中为windows服务创建自定义安装_C#_Windows Services_Installation - Fatal编程技术网

C# 在.NET 3.5中为windows服务创建自定义安装

C# 在.NET 3.5中为windows服务创建自定义安装,c#,windows-services,installation,C#,Windows Services,Installation,我有一个windows服务和一个自定义控制台安装,应该安装它(除其他外,它可以安装-所以我不能使用安装项目中的.msi安装) 代码使用installutil.exe进行安装,但3.5 framework没有此exe。如何安装此类服务? 它需要在32位和64位以及没有VS的机器上运行,只有framework 3.5 (我环顾了一下网站,找到了几个答案,但都不适用于这里) 更新: 如果我使用2.xx版本,我会得到一个异常: System.BadImageFormatException:无法加载文件或

我有一个windows服务和一个自定义控制台安装,应该安装它(除其他外,它可以安装-所以我不能使用安装项目中的.msi安装)

代码使用installutil.exe进行安装,但3.5 framework没有此exe。如何安装此类服务? 它需要在32位和64位以及没有VS的机器上运行,只有framework 3.5

(我环顾了一下网站,找到了几个答案,但都不适用于这里)

更新: 如果我使用2.xx版本,我会得到一个异常:

System.BadImageFormatException:无法加载文件或程序集xxx或 它的一个依赖项。此程序集由较新的运行时生成 超过当前加载的运行时,无法加载

3.5框架确实有这个应用程序

查目录

C:\Windows\Microsoft.NET\Framework\v2.0.50727\

或者类似的东西。这就是.NET 3.5中的installutil.exe存在的地方(它在.NET 2中使用相同的平台,这就是为什么该文件夹被这样调用的原因)

因此,您应该能够使用该完整路径调用installutil.exe

代码使用installutil.exe进行安装,但3.5 framework没有此exe

我有一个现成的.net3.5安装,它随installutil.exe一起提供

查看

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727


请记住,.NET3.5仍然在.net2运行时上运行

我同意,但如果我这样做,我会得到异常System.BadImageFormatException:无法加载文件或程序集xxx或其依赖项之一。此程序集由比当前加载的运行时更新的运行时生成,因此无法加载。。将使用此信息更新我的初始问题。@FedorHajdu您是否尝试过使用Framework64文件夹中的
InstallUtil.exe
?如果您的程序集真的在.NET 3.5上,那么这个installutil应该会成功。在您建议之前我没有这样做,但现在我做了,它仍然抛出相同的异常。