如何使用MSI安装程序使所有用户都能使用Word 2010模板?

问题描述

| 我正在为要为所有用户安装的Word 2010加载项构建MSI安装程序。该加载项包括我的加载项需要工作的模板。我将要安装的模板文件设置到公共文件
C:\\Program Files\\Common\\Microsoft\\Templates
。然后设置以下密钥:
User/Machine Hive: Software\\Microsoft\\Office\\14.0\\Common\\General
  SharedTemplates=\"[CommonFilesFolder]Microsoft\\Templates\"
当我选择为“仅我自己”安装时,以上密钥和值将加载到HKEY_CURRENT_USER中,一切都很好。但是,当我选择\“ Everyone \”时,上面的项将被加载到HKEY_LOCAL_MACHINE中(应该如此),但是Word似乎没有从该位置的注册表中获取值。 我需要找到一种方法,当为“每个人”安装MSI一次时,所有用户都可以使用共享模板。 该安装程序正在32位Windows XP上运行。     

解决方法

        这是一个误会。 HKCU和HKLM之间的区别适用于加载项密钥(\“加载项仅适用于当前用户或所有用户\”)。相对于\“ Common \\ General \\ Shared Templates \”路径Word会忽略注册表HKLM配置单元中的任何内容。此设置仅从HKCU读取。 在企业环境中,通常此设置是通过组策略分发的。 Word首先读取HKCU中的“策略”路径,并在用户可以通过界面更改之前应用此设置。 如果必须为“每个用户”安装外接程序,则需要进行管理员安装,因此您可以告诉管理员,他必须为所有用户确保正确的“工作组模板”路径。 或者,您可以尝试在外接程序启动时设置路径,但恐怕Word中需要新的模板路径“ catches”重新启动Word。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...