1 HKLM
2 {
3 NoRemove SOFTWARE
4 {
5 NoRemove Microsoft
6 {
7 NoRemove Office
8 {
9 NoRemove Word
10 {
11 NoRemove Addins
12 {
13 ForceRemove WordClientDemo.WordAddinDemo
14 {
15 var ‘FriendlyName‘ = s ‘WordAddinDemo‘
16 var ‘LoadBehavior‘ = d ‘3‘
17 var ‘Description‘ = s ‘WordAddinDemo‘
18 var ‘CommandLineSafe‘ = d ‘0‘
19 }
20 }
21 }
22 }
23 }
24 }
25 }
在32位系统中这样写注册表没有问题,但是在64位系统中不行。
64 位版本 Windows 中的注册表分为 32 位注册表项和 64 位注册表项。
32
位注册表项显示在以下注册表项下:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node
也就是说32位的程序是从上面路径读取注册表值的,所以上述代码应改成
1 HKLM
2 {
3 NoRemove SOFTWARE
4 {
5 NoRemove Wow6432Node
6 {
7 NoRemove Microsoft
8 {
9 NoRemove Office
10 {
11 NoRemove Word
12 {
13 NoRemove Addins
14 {
15 ForceRemove WordClientDemo.WordAddinDemo
16 {
17 var ‘FriendlyName‘ = s ‘WordAddinDemo‘
18 var ‘LoadBehavior‘ = d ‘3‘
19 var ‘Description‘ = s ‘WordAddinDemo‘
20 var ‘CommandLineSafe‘ = d ‘0‘
21 }
22 }
23 }
24 }
25 }
26 }
27 }
28 }
更具体可以参考:
http://blog.csdn.net/pbymw8iwm/article/details/6931120
office 插件开发 -- 64位系统注册表问题,布布扣,bubuko.com
时间: 2024-08-08 09:40:34