在基于 x64 的版本的 Windows Server 2003 和 Windows XP 专业 x64 版中 x 的注册表更改

文章翻译 文章翻译
文章编号: 896459 - 查看本文应用于的产品
展开全部 | 关闭全部

本文内容

概要

本文介绍一些在 $ x 中已做的更改注册表的 Microsoft Windows Server 2003 和 Microsoft Windows XP 专业 x64 版的基于 x64 的版本。此外,本文还介绍了如何在 Windows x64 版的操作系统存储为 32 位程序和的注册表信息 64 位程序。

更多信息

重要此分区、 方法,或任务包含告诉您如何修改注册表的步骤。但是,如果注册表修改不当可能会出现严重问题。因此,请确保您仔细按照这些步骤。附加的保护注册表之前先备份您对其进行修改。然后,您可以在出现问题时还原注册表。有关如何备份和还原注册表的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322756如何备份和还原在 Windows 注册表


运行的是 x 基于 x64 的版本的 Microsoft Windows Server 2003 或 Microsoft Windows XP 专业 x64 版的计算机使用不同的注册表布局处理 32 位和 64 位程序。注册表布局中所做的更改 x64 版版本的 Windows 操作系统确保程序.dll 硬编码路径、 程序设置和其他参数值不被覆盖。

若要防止覆盖 64 位注册表设置的正在运行的计算机的 32 位注册表设置是 x 基于 x64 的版本的 Windows 注册表中的新分支中存储 32 位程序的设置。用户不程序安装过程中发现的任何更改。注册表重定向过程使安装程序和 $ 访问正确的注册表子键,而无需用户干预的程序配置设置。

32 位程序和 $ x 基于 x64 的版本的 Windows 上运行的 64 位程序在不同的模式下运行,并在注册表中使用以下各节:
  • 本机模式 64 位程序运行在纯模式和访问键和存储在以下注册表子键中的值:
    HKEY_LOCAL_MACHINE\Software
  • 32 位程序运行在 WOW64 模式和访问键和值存储在以下注册表子项中:
    HKEY_LOCAL_MACHINE\Software\WOW6432node

注册表重定向

若要支持的 32 位和 64 位 COM 注册和程序共存状态,WOW64 子系统提供 32 位程序使用的注册表的另一个视图。在 WOW64 子系统使用注册表重定向截获位级别的注册表调用。注册表重定向还可以确保注册表调用被定向到在注册表中正确的分支。

当您安装新程序或 Windows x64 版的计算机上运行程序时,所做的 64 位程序的注册表调用访问
HKEY_LOCAL_MACHINE\Software
注册表子键不重定向。WOW64 截获由 32 位程序的注册表调用到
HKEY_LOCAL_MACHINE\Software
,然后将它们重定向到
HKEY_LOCAL_MACHINE\Software\WOW6432node
子键。 通过重定向仅 32 位程序调用,WOW64 可确保程序始终写入相应的注册表子键。注册表重定向不要求程序代码修改,和此过程是对用户透明。

包含在 $ 重定向中的注册表子键

在 Windows x64 版操作系统的当前版本中,下面的注册表子键将被重定向:
  • HKEY_LOCAL_MACHINE\Software\Classes
  • HKEY_LOCAL_MACHINE\Software\Microsoft\Ole
  • HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc
  • HKEY_LOCAL_MACHINE\Software\Microsoft\COM3
  • HKEY_LOCAL_MACHINE\Software\Microsoft\EventSystem
重要 在更高版本的操作系统版本中可能会更改注册表项重定向。若要避免编写程序代码的基于以前所讲述的重定向的键的列表建议的软件开发人员。而是,应验证重定向状态,它可以使对注册表的 32 位或 64 位逻辑视图的调用之前编写代码。

注册表反射

打开注册表的 64 位节在所有时间和注册表反射提供了一种容纳 32 位的实时方法。例如对于考虑被命名为的 Hello.exe 充当 32 位的 OLE 服务器但是,也可以从 64 位客户端服务请求的 32 位程序。注册表反射使 Hello.exe 程序以使 32 位注册表和 64 位注册表保持打开状态以处理这两个 32 位和 64 位程序调用。

反射使两个相同的注册表,以支持同时进行的本机和 WOW64 操作的物理副本的存在。 大部分的各项的更改将反映的是类键。类键编写"最后一编写器入选"的理念和密钥句柄已关闭,当编写 32 位或 64 位的类键并将其关闭。

下面的列表包含"最后一编写器入选"理念的一些示例:
  • 在执行 Windows x64 版操作系统的干净安装之后,Wordpad.exe 的 64 位版本被注册来处理.doc 文件。注册表反射器将 64 位注册表部分中的.doc 注册复制到 32 位注册表部分中。
  • 当安装了一个 32 位版本的 Microsoft Office 时 Winword.exe 被注册来处理在 32 位注册表视图中的.doc 文件。注册表反射器会将此信息复制到 64 位注册表部分中。因此,32 位和 64 位程序开始 Winword.exe 的 32 位版本,为.doc 文件。
  • 当安装了 64 位版本的 Microsoft Office 时的 Winword.exe 64 位版本注册 64 位注册表部分处理.doc 文件中。注册表反射器还将此信息复制到 32 位注册表部分以使 32 位和 64 位程序启动 64 位版本的 Winword.exe.doc 文件。
注意开发人员可以使用 RegQueryReflectionKey 函数来确定为特定密钥反射状态,并使用 RegDisableReflectionKey 函数和 RegEnableReflectionKey 函数以编程方式禁用和启用的特定项的注册表反射。

共享的注册表项

某些注册表子键包含常数存在于注册表的只有一个副本中,即使这两个 32 位和 64 位注册表视图中显示这些项的信息。这被称为注册表反射。

在 Windows x64 版的操作系统的当前版本,以下注册表子键跨 32 位和 64 位程序共享并不重写根据 32 位或 64 位程序或进程的级别:
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\SYSTEMCERTIFICATES
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CRYPTOGRAPHY\SERVICES
  • HKEY_LOCAL_MACHINE\SOFTWARE\CLASSES\HCP
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\ENTERPRISECERTIFICATES
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\MSMQ
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\NETWORKCARDS
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\PROFILELIST
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\PERFLIB
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\PRINT
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\PORTS
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\CONTROL PANEL\CURSORS\SCHEMES
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\TELEPHONY\LOCATIONS
  • HKEY_LOCAL_MACHINE\SOFTWARE\POLICIES
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\GROUP 策略
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\POLICIES
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\SETUP\OC 管理器
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\SOFTWARE\MICROSOFT\SHARED TOOLS\MSINFO
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\SETUP
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CTF\TIP
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CTF\SYSTEMSHARED
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\FONTS
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\FONTSUBSTITUTES
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\FONTDPI
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\FONTMAPPER
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\RAS
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\DRIVER 签名
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\NON 驱动程序签名
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CRYPTOGRAPHY\CALAIS\CURRENT
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CRYPTOGRAPHY\CALAIS\READERS
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\TIME 区域
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\TRANSACTION 服务器
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\DFS
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\TERMSERVLICENSING
重要 注册表键反射可能会更改在更高版本的操作系统版本。若要避免编写程序代码的基于反射的快捷键的以前所讲述的列表建议的软件开发人员。而是,应写入代码验证反射状态之前该程序使对注册表的 32 位或 64 位逻辑视图的调用。

注册表编辑器更改

32 位和 64 位版本注册表编辑器的信息将包含在 x 64 版的操作系统。 为了更好地理解 Windows x64 版计算机上注册表的 64 位和 32 位程序部分,使用下列方法之一。

启动 64 位版注册表编辑器

  1. 登录到 Windows x64 版的计算机使用具有管理权限的帐户。
  2. 单击 开始、 单击 运行,在 打开 框中键入 regedit,然后单击 确定
  3. 在注册表编辑器中找到并检查以下注册表子项:
    HKEY_LOCAL_MACHINE\Software\WOW6432node

若要启动 32 位版注册表编辑器

单击 开始、 单击 运行,在 打开 框中键入 drive letter where you installed Windows x64 Edition \Windows\syswow64\regedit.exe –m,然后单击 确定–m 交换机,可以运行多个实例的注册表编辑器。

注意 当您登录到一个 Microsoft Windows Server 2003 Service Pack 1 (SP1) 或基于更高版本的计算机或 Windows x64 基于版的计算机上使用远程桌面协议 (RDP) 连接到另一台 Windows Server 2003 SP1 或更高版本的计算机或 Windows x64 基于版的计算机时您可以在远程计算机上查看注册表的 64 位部分。 但是时登录到 Microsoft Windows Server 2003 计算机尚未升级到 SP1 或任何其他 32-位 Windows 操作系统,, 可以只查看注册表的 32 位部分在远程计算机上。

x 基于 x64 的 Windows 版本的 Microsoft 的技术支持

如果您的硬件附带有已安装了 Microsoft Windows x64 版,与硬件制造商联系,提供了技术支持和 Windows x64 版本的帮助。在这种情况下您的硬件制造商提供的支持,因为 Windows x64 版本所包含的您的硬件。与硬件制造商联系,可能有自定义 Windows x64 版本安装通过使用唯一的组件。独特组件可能包括特定设备驱动程序,或者可能包括以最大限度地提高硬件的性能的可选设置。如果您必须具有与 Windows x64 版本的技术帮助,Microsoft 将提供合理的努力获得帮助。但是,您可能必须直接与制造商联系。您的制造商是最佳限定来支持您的制造商在硬件上安装的软件。如果分别为购买如在 Windows Server 2003 64 版在 Windows x64 版本与 Microsoft 联系技术支持。

有关 Windows XP 专业 x64 版的产品信息请访问下面的 Microsoft 网站:
http://www.microsoft.com/windowsxp/64bit/default.mspx
产品 x 基于 x64 的 Windows Server 2003 的版本有关的信息,请访问下面的 Microsoft 网站:
http://www.microsoft.com/windowsserver2003/64bit/x64/default.mspx

属性

文章编号: 896459 - 最后修改: 2008年4月21日 - 修订: 4.0
这篇文章中的信息适用于:
  • Microsoft Windows Server 2003, Standard x64 Edition
  • Microsoft Windows Server 2003, Datacenter x64 Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows XP Professional x64 Edition
关键字:?
kbmt kbtshoot kbinfo KB896459 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 896459
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com