如何在linux中制作msi?

问题描述 投票:1回答:2

我在windows上创建了一个msi安装程序,我把msi放到了linux平台上,我用7z来提取msi安装程序的内容,之后我使用lcab命令提取并更改了一些文件,也使用lcab命令我把所有文件都放到了我改装成驾驶室。现在我需要恢复msi,任何想法?

linux windows-installer compression msiexec
2个回答
4
投票

你可以使用msi-packager。可以使用以下命令安装在Ubuntu / Debian上:

sudo apt-get install msitools nodejs npm
sudo npm install -g msi-packager

https://www.npmjs.com/package/msi-packager


1
投票

以下是在Linux下操作MSI文件的完整过程。想法是将MSI内容导出为XML,修改XML然后重新打包de MSI文件,甚至可以修改EXE文件,而不仅仅是表:

  1. 安装WINE 32 bits version
  2. 安装WineTricks,您需要它来安装DLL和框架。
  3. 使用winetricks安装.NET2.0,.NET4.0,MSXML6,VCRUN6(简单如./winetricks dotnet20 dotnet40 msxml6 vcrun6)
  4. 从[官方项目页面(https://msi2xml.sourceforge.io/)下载MSI2XML和XML2MSI可执行文件
  5. 执行wine msi2xml installer.msi
  6. 编辑XML文件,然后使用wine xml2msi installer.xml再次打包
  7. 你完成了,这是你的MSI文件!

希望有帮助,使用MSI2XML和XML2MSI,您可以在Windows下操作MSI文件,也可以在Linux下使用WINE操作,它是100%可行的解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.