当前位置:  开发笔记 > Android > 正文

如何在Vista中获取Application Data文件夹/ Word模板文件夹?

如何解决《如何在Vista中获取ApplicationData文件夹/Word模板文件夹?》经验,为你挑选了1个好方法。

使用WiX(Windows Installer XML)我创建了一个MSI安装程序,它将Word模板安装到用户Application Data文件夹中,例如在Windows XP上

C:\Documents and Settings\\Application Data\Microsoft\Templates

我正在从注册表中检索此文件夹的路径:


    


 


    

但是,某些在Windows Vista上安装MSI文件的用户收到错误,因为APPDIR属性为.

APPDIR不是检索Application Data文件夹的正确方法吗?或者我必须考虑Vista上的另一个属性?

编辑:这只是WiX代码的简短版本,用于检索Word的模板文件夹.首先,我实际上检查用户是否具有由策略或HKCU\Software\Microsoft\Office\12.0\Common\General\UserTemplates定义的自定义模板文件夹.但是,如果没有设置这些,则回退是使用由上面的代码检索的%APPDATA%\ Microsoft\Templates下的默认位置.



1> Wim Coenen..:

您应该使用[AppDataFolder].我在Windows安装程序属性参考中找不到任何关于"appdir"的内容.

编辑问题编辑后:在外壳文件夹键(大博文的BTW)你来自哪里,让你的APPDIR值是一个非常古老和过时的方式来获得在系统文件夹.它只是为了向后兼容,你不应该依赖它.特别是如果你住在Raymond Chen附近.

编辑2:因为真正的问题是"如何找到用户的单词模板文件夹"...单词模板文件夹并不总是

[AppDataFolder]\Microsoft\Templates

这是因为可以在工具 - 选项 - 文件位置 - 用户模板下配置模板文件夹.具有讽刺意味的是,如果我们要检测到这一点,我们将回到搜索注册表

  
     
  

但是,此注册表值通常不存在,并且您无法在此处指定包含[AppDataFolder]的默认值(我尝试过).

相反,我会尝试定义两个组件,一个安装到USERTEMPLATES,另一个安装到[AppData]\Microsoft\Templates.然后,您可以使用Condition元素来测试USERTEMPLATES的存在,并只安装正确的元素.

推荐阅读
U友50081205_653
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有