1

在Windows 安装程序提供的系统文件夹属性TemplateFolder列表中,我看到“当前用户的模板文件夹的完整路径”。所以我可以使用TemplateFolderwix 中的目录 ID 来安装用户特定的模板。

但是,我需要安装到common templates 文件夹,即windows API 中称为CSIDL_COMMON_TEMPLATES(also ) 的文件夹。FOLDERID_CommonTemplatesWindows 安装程序似乎没有为此提供系统文件夹属性。

如何使用 wix 将文件安装到公共模板文件夹?

4

2 回答 2

1

文档在“TemplateFolder”-ID上告诉我们,它取决于安装上下文是“所有用户的 Templates 文件夹的完整路径”(每台机器)还是“当前的 Templates 文件夹的完整路径”用户”(每个用户)。

于 2015-04-22T12:22:05.593 回答
0

我最终定义了一个COMMONTEMPLATEFOLDER这样的:

<DirectoryRef Id='TARGETDIR'>
  <Directory Id='COMMONTEMPLATEFOLDER' Name='Templates' />
</DirectoryRef>

<Property Id="COMMONTEMPLATEFOLDER">
   <RegistrySearch Id="searchCommonTemplateFolder"
      Root="HKLM"
      Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders"
      Name="Common Templates"
  Type="raw" />
</Property>

这似乎工作正常,但不幸的是它依赖于未记录的注册表项。我仍然想找到更好的方法。

于 2012-07-02T08:54:53.917 回答