Windows临时文件目录不可访问

时间:2017-04-20 21:08:34

标签: wix windows-installer

我正在使用wix创建安装程序,并且在我的延迟自定义操作Could not write to any Graphite server in cluster中,在现有临时文件上返回false。如何才能使我的自定义操作显示File.Exists

1 个答案:

答案 0 :(得分:2)

您应该显示实际代码。它可以在交互式用户桌面运行的代码中正常工作,但它是从系统文件夹中运行模拟(或使用系统帐户)的msiexec进程调用的,并且您不需要甚至可以说它是Dll电话还是可执行文件。

但问题是,您无法通过自定义操作查看该文件夹。如果您使用系统帐户延迟运行并查看Environment.SpecialFolder以获取用户的临时文件夹,则您将获得系统帐户的临时文件夹。如果您使用模拟运行,您仍然无法获得正确的位置,因为模拟不会加载整个用户配置文件,这样您就可以访问用户个人资料位置,例如用户的临时文件夹。

如果不确切知道自己要做什么,这可能无济于事,但WiX和Windows Installer的搜索功能将完全符合您的要求。只需在TempFolder中搜索该文件,这是您需要的属性名称位置。你需要这样的东西搜索TempFolder,忽略版本检查:

http://wixtoolset.org/documentation/manual/v3/howtos/files_and_registry/check_the_version_number.html