实际上,我尝试了其他工具,如nsis,7Zip,但我不能用nsis打开msi文件。那么,有没有办法在Linux中打开msi文件,并对file.Please进行一些更改,从而指导我如何做到这一点。
发布于 2018-01-28 02:09:42
看起来msitools应该能帮到你。
我已经能够用msiextract
从那个包中提取一些MSI文件。
发布于 2015-03-01 23:32:42
很抱歉这么问,但是你确定你知道MSI是什么吗?它不是像7zip那样的包格式。MSI主要由表格组成,这些表格的编辑需要非常了解Windows Installer技术。
您可能正在寻找的是编辑MSI设置的文件内容。这些文件要么是未压缩的(这里显然不是这种情况),要么是位于.msi之外的.cab文件中,或者是打包在.cab文件中,而这些文件本身又被打包在.msi文件中。
我假设后一种情况是您的,所以您有两个包级别。
因此,最好的答案可能是,如果在Windows PC上工作:
- Download a tool like Insted
- Unpack the .cab files out of the MSI (look for streams)
- Identify the file you want to change in the .cab (not identical names)
- Change the new file size in the MSI file itself with the mentioned tool
- Either save the .cab file again in the MSI file (no easy tool for that !!) or edit the .msi file so that the MSI works now with .cab files not compressed inside the msi but lying besides.
我很擅长这件事,我几乎不会做这件事。所以我不认为你这样做是有意义的。再说一次:以上所有注意事项都是假设您正在Windows操作系统上工作。
当然,您可以在Linux中做到这一点:使用Windows VM !!它可能也适用于葡萄酒。
一种专业的方法是使用专业的MSI工具,并创建包含所需更改的更新或补丁。在某些情况下,这也可以通过转换来完成,但如果您想主要更改文件,则会有陷阱,因此更新对此更好。无论你选择什么,你都会花费大量的时间--也许还会花一些钱在有UI的工具上。选择WiX用于使用开发人员工具编辑XML文件,这意味着没有专门的UI,或者换句话说,当您想要花费更多时间而不是金钱时。
如果可以的话,请继续使用NSIS --它不像MSI那么复杂,如果它能满足您的需求,那也没问题。
发布于 2015-03-01 23:36:09
如果你想写能在Linux、Windows和更多平台上运行的安装程序,只需要考虑InstallAnywhere- -它就是为这样的事情而设计的,但它当然不是免费的。
https://stackoverflow.com/questions/28762811
复制相似问题