本文介绍了.NET InstallUtil工具 - 32位和64位的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我得编译成值为anycpu一个窗口服务。我试图让它进入我们的安装分发。然而...我不清楚的32位和64位版本InstallUtil的之间的差异。有谁知道什么(如果有的话)有?

I've got a windows service compiled as AnyCPU. I'm trying to get it into our installer to distribute. However... I am unclear on the difference between the 32 bit and 64 bit versions of InstallUtil. Does anyone know what (if any) there are?

在我的64位机,我可以运行在$(WINDIR)\ Microsoft.NET \ Framework64 \ V2.0.50727或$(WINDIR)\ Microsoft.NET \框架\ V2.0.50727。

On my 64 bit machine, I can run either the $(WinDir)\Microsoft.NET\Framework64\v2.0.50727 or the $(WinDir)\Microsoft.NET\Framework\v2.0.50727.

在这两种情况下,在任务管理器中所产生的服务进程不具备* 32标志适用于它。

In both cases, the resulting service Process in Task Manager does not have the *32 flag applied to it.

只有32位InstallUtil工作在32位机器(显然)。

Only the 32 bit InstallUtil works on 32 bit machines (obviously).

是否有必要使用\ Framework64 \版本InstallUtil吗?这是什么做什么不同?

Is there a need to use the \Framework64\ version of InstallUtil? What does it do differently?

推荐答案

根据,你应该使用64位版本安装64位和MSIL组件,但它并没有说为什么。

According to this, you are supposed to use the 64 bit version to install 64-bit and MSIL assemblies, but it doesn't say why.

在.NET Framework 2.0版,32位版本开始  公共语言运行库(CLR)与船舶只有32位版本  安装程序的工具,但64位版本的CLR附带的  32位和64位版本的安装程序工具。当使用  64位CLR,使用32位安装程序工具来安装32位  组件,以及64位安装程序工具来安装64位和  Microsoft中间语言(MSIL)组件。这两个版本的  安装程序工具的行为是一样的。

我相信这里解释了原因。如果你看一下帖子的下方,这说明了两时之间的一些差异,使用32位intallutil。

I believe here explains why. If you look at the bottom of the post, it explains some differences between the two and when to use the 32-bit intallutil.

Installutil.exe是专为特定的平台,因此它会  开始作为一个32位或64位进程和相关的注册表配置单元会  更新。请注意,如果你有一个管理单元内置了与平台  开关,你只能将其注册在蜂巢中的一个  (32位或64位)。

这篇关于.NET InstallUtil工具 - 32位和64位的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-23 05:07