- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我遇到的问题与此处描述的问题非常相似:ProgramFiles64Folder is installing to \Program Files (x86)\ in WIX Installer
但是,那里的解决方案对我不起作用。 Wix 仍会生成一个安装到 C:\Program Files (x86) 的 .msi
我将以下代码放入我的 Product.wxs 文件中:
<?if $(var.Platform) = x64 ?>
<?define Win64 = "yes" ?>
<?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?>
<?define ConfigFolder = "Release" ?>
<?else ?>
<?define Win64 = "no" ?>
<?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?>
<?define ConfigFolder = "Release_x86" ?>
<?endif?>
然后我尝试指定安装文件夹如下:
<Directory Name="SourceDir" Id="TARGETDIR">
<Directory Name="$(var.PlatformProgramFilesFolder)" Id="$(var.PlatformProgramFilesFolder)">
...
我确认 var.Platform 设置正确,因为它从正确的 ConfigFolder 复制了源文件。但是,似乎 ProgramFiles64Folder 和 ProgramFilesFolder 都设置为 C:\Program Files (x86)
我验证了 candle.exe 是使用 -dPlatform=x64 选项调用的。
我什至尝试在我的包标签中指定平台
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" Platform="x64" />
没有任何帮助,它仍然尝试安装到 C:\Program Files (x86)
知道我还能尝试什么吗?
谢谢。
我正在使用 WiX 3.9 版
最佳答案
事实证明,不同的 .wxs 文件与 WixPerUserFolder 和其他相关变量混淆。
关于Wix ProgramFiles64Folder 仍然是,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27789161/
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: C# - How to get Program Files (x86) on Windows Vista 6
如何使用 CMake 的 $ENV 变量读取 ProgramFiles(x86) 环境变量的值? # work fine message( "$ENV{ProgramW6432}" ) message
我想知道有什么方法可以使用像%PROGRAMFILES%, %APPDATA%,.... 这样的窗口的普通快捷方式吗?在使用 System.Diagnostics.Process.Start 时? 我
我有一个奇怪的问题。 我正在使用 windows 7 企业版 sp1 64 位。 我需要为我的项目获取 Program files 和 Program files X86 目录路径。这就是我所做的:
我正在开发一个 C# 项目,我正在使用以下代码 string rootPath = Environment.GetFolderPath(Environment.SpecialFolder.Progra
我想问一下我们可以在 Windows 中运行命令,就像我通过键入 cmd 打开命令提示符一样。 C:/> cd 程序文件 C:/>cd 任意目录 我想问一下我可以从 java 运行这些命令吗?就像我想
根据 this post 不可能在路径变量中包含 %ProgramFiles%,因为 Windows 环境变量是按字母顺序解析的。 但是,我需要能够从批处理文件中获取程序文件在 PATH 中的正确位置
我有以下 NSIS 代码 Function CreateDesktopSC ;Creates Desktop Shortcut SetShellVarContext current
我可以得到%ProgramFiles%在 Ant 与 ${env.PROGRAMFILES} .但我不知道如何获得 %ProgramFiles(x86)% . 最佳答案 使用 ${env.Progra
我正在安装一个 MSI 的应用程序,忽略 %programfiles%环境变量。从 procmon 跟踪来看,它似乎正在使用 HKLM\SOFTWARE\Microsoft\Windows\Curre
在传统的cmd中,我们可以使用cd %programfiles%切换目录,通常是 C:\Program Files . 在PowerShell中,我们如何通过环境变量转到目录? 最佳答案 原则是: $
简单的问题: 如果在32位系统上的PowerShell脚本中使用$ {env:ProgramFiles(x86)}变量,它返回“C:\ Program Files”还是未定义? 在x64系统上,当同时
我的问题与 Launch application after installation complete, with UAC turned on 我们不想在安装程序中构建一组复杂的配置屏幕,而是希望在
我对编程还很陌生,我不知道所有的最佳实践,所以在这里我想问的是,当涉及到文件处理的位置时,最佳实践是什么。 我已经创建了一个 Winforms 程序来进行视频修剪/转换。我的程序当前安装到用户的 C:
我尝试在 GNU 生成文件中使用 Windows 7 的环境变量 PROGRAMFILES(X86) 但没有成功。 这里是一个最小的例子: $(info DIR: $(PROGRAMFILES(X86
我已经创建了一个 C# WinForms 应用程序。它有一些它使用的附加文件,例如帮助文件和一些外部数据文件。我想将这些文件放在 Environment.GetFolderPath(Environme
基本上就是这个问题。我尝试了几个选项: iisexpress /path:"C:\ProgramFiles (x86)\PathToMyApp" /port:9000 iisexpress "/pat
我们正在发布应用程序,即 32b,因此将其放入 ProgramFiles(x86) 目录。它有一个 x64“插件”,作为一个单独的进程(服务)运行,现在我们将它部署到主应用程序的子目录中。该插件未部署
自: irb --help 用法:irb.rb [选项] [程序文件] [参数] 我知道如果我包含一个程序文件,我可以将参数传递给 ARGV 例如: irb test.rb A B C 其中 test
正如 MSDN 的 WOW64 Implementation Details 中所述,变量 %PROGRAMFILES% , 在 64 位 Windows 操作系统上的 32 位进程中,解析为 C:\
我是一名优秀的程序员,十分优秀!