我正在尝试为我的应用程序创建一个补丁。实现所描述的示例here按预期工作。但是,每个版本的文件都存储在不同的目录中。版本1.0文件位于c:sample \ 1.0中,1.1文件位于c:sample \ 1.1中。如果我将文件移动到一个位置,请创建1.0安装程序,修改文件,然后创建1.1安装程序;火炬的wixmst输出没有任何区别。当我运行pyro时,我得到:
警告PYRO1079:机柜'media1.cab'不包含任何文件。如果此修补程序不包含任何文件,则可能会安全地忽略此警告。否则,尝试在首次构建转换时将-p传递给torch.exe,或者在PatchFamily创作中添加ComponentRef以将更改的文件拉入机柜。
这对我来说是一个问题,因为我项目的文件保存在一个git存储库中。我们使用分支和标记来描述版本。因此,我只有一个文件目录。
我有两个版本的.msi和.wixpdb。
如何在这种情况下创建补丁?
答案 0 :(得分:3)
Pyro需要访问.wixmst以及旧文件和新文件。如果您只有一组文件(更新或更旧),那么补丁显然会发现没有文件差异。这就是你从Pyro那里得到错误的原因。
如果使用bindpaths创建原始.msi文件(及其.wixpdbs),则可以使用-bt
切换到pyro以及-bu
开关的新路径提供旧路径。如果您没有使用bindpaths,则需要为旧文件重新创建旧的目录结构,并为新文件创建新的目录结构。
如果您无法找到旧文件和新文件(bindpaths效果最佳),那么您将不得不进行管理员图像类型修补。