在 Wow6432Node 和普通配置单元中创建 Registry [英] Create Registry in both Wow6432Node and normal hive

查看:26
本文介绍了在 Wow6432Node 和普通配置单元中创建 Registry的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

所以我使用 Visual Sudio 2010 添加注册表项为 Outlook Addin 创建了一个 MSI:

并运行它并将注册表项放在 Wow6432Node 中,尽管 Office 和 Windows 都是 x64.

我运行 Windows 7 和 Office 2010 x64.

然后我导出 myAddin 注册表配置单元并对其进行编辑,使其指向 HKEY_LOCAL_MACHINESoftwareMicrosoftOfficeOutlookAddins.打开 Outlook 并猜猜是什么....插件出现了.

下一个问题,如何将注册表项添加到 Visual Studio 中的普通和 Wow6432Node 配置单元?

这是这个问题的后续:Outlook COM 插件已安装但未在 Outlook 中加载

解决方案

对于 x64 Office,确保您分配了正确的TargetPlatform(在VS 安装项目属性下),以便安装程序知道哪个注册表要分配的位置.默认的 TargetPlatform 是 x86,它会将您的注册表配置单元放入 x64 操作系统主机上的 Wow6432Node.

VS 安装项目 (x64 Office)

<块引用>

目标平台 = x64

VS 安装项目 (x86 Office)

<块引用>

目标平台 = x86

So I created an MSI for Outlook Addin using Visual Sudio 2010 adding registry key as:

and ran it and it puts the registry keys in the Wow6432Node although both Office and Windows is x64.

I run windows 7 and Office 2010 x64.

Then I exported myAddin registry hive and edited it so it pointed to HKEY_LOCAL_MACHINESoftwareMicrosoftOfficeOutlookAddins. Opened Outlook and guess what....the addin shows up.

Next question, how do I add the registry keys to both normal and Wow6432Node hive in Visual Studio?

This is a followup form this question: Outlook COM addin installed but not loading in Outlook

解决方案

For x64 Office, make sure you assign the proper TargetPlatform (under VS Setup Project Properties) so that the installer knows which registry location to assign. The default TargetPlatform is x86 which will place your registry hives into Wow6432Node on a x64 OS host.

VS Setup Project (x64 Office)

TargetPlatform = x64

VS Setup Project (x86 Office)

TargetPlatform = x86

这篇关于在 Wow6432Node 和普通配置单元中创建 Registry的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆