我有一个msi安装程序,工作正常。我添加了一个外部合并模块。编译期间存在一些目录合并错误。我从合并模块的目录表中删除了导致错误的目录。
我收到错误:
MSI错误2732错误:目录管理器未初始化。
请帮助解决问题。
答案 0 :(得分:5)
错误2732的Windows Installer Error Messages文档说:
“目录管理器负责确定目标和源路径。它在成本计算操作(CostInitialize操作,FileCost操作和CostFinalize操作)期间初始化。标准操作或自定义操作调用需要该操作的函数目录管理器初始化之前的目录管理器。应该在成本计算操作之后对此操作进行排序。“
答案 1 :(得分:0)
一种可能性是您可能没有在set directory操作中的目录路径之后放置反斜杠(\) 要么 自定义操作应为CostInitialize
答案 2 :(得分:0)
正如Mike Dimmick所说, 从“InstallUISequence”表中获取CostIntialize的序列号。 现在转到InstallExecuteSequence表并找到自定义操作并将序列值更新为CostIntialize值。
它对我来说很好。你必须检查你的情况。
答案 3 :(得分:0)
另一个可能需要查看的地方是安装日志。 尝试使用日志记录安装软件包:
msiexec /i <package.msi> /l*v
检查日志以查找包含“ 返回值3 ”的行。失败的自定义操作将显示在上方。