我在用于创建 cab 的 .inf 文件中使用宏时遇到问题,特别是在设置InstallDir
字符串时。如果我做这样的事情:
InstallDir=\<PathToProgramFiles>\MyAppName
然后一切正常。但是,如果我这样做:
InstallDir=%CE1%\MyAppName
然后在尝试安装 cab 时出现以下错误(在我的设备上双击它):“MyAppName 未成功安装。请再次运行安装程序。”
这似乎只适用于内置宏字符串。我可以%AppName%
毫无问题地使用。也许有一些注册表设置没有正确设置,通常会解析%CE1%
宏?
关于发生了什么的任何想法?
编辑:我的设备没有\Program Files
目录。似乎%CE1%
宏总是解析为该路径,如果InstallDir
inf 文件中指定的不存在(最后一个目录部分除外,则安装失败。手动创建\Program Files
修复了问题。由于我使用的很多设备使用他们的 Program Files 目录有不同的路径,有没有一种通用的方法可以让安装程序默认为实际的 Program Files 目录?我想我唯一的另一个选择是不指定路径并强制用户选择一个?