Chromium - 如何使用mini_installer.exe制作实际的安装程序

时间:2018-05-12 11:51:30

标签: windows-installer chromium

从源代码构建铬后,您可以通过运行

为Windows创建“迷你安装程序”
ninja -C out\BuildFolder mini_installer

此工作正常,并在mini_installer.exe中创建out\BuildFolder

但是当我启动mini_installer.exe时,它只会启动铬。它没有打开一个很好的安装程序界面。

所以我使用InnoSetup来安装chrome文件,我甚至没有使用mini_installer.exe

有人可以描述一下这个“mini_installer”应该完成的事情吗?它可以阻止我为我的Chromium分叉制作自己的InnoSetup安装程序吗?

1 个答案:

答案 0 :(得分:3)

mini_installer只是一个打包器,它包含以下文件:

 1. CHROME.PACKED.7z
 2. setup.exe

这些文件应该出现在BuildFolder中。 CHROME.PACKED.7z打包Chrome.7z,其中包含您的Chromium文件和文件夹。

mini_installer会将这两个文件解压缩到一个临时目录,然后执行setup.exe。例如,如果mini_installer.exe使用--system-level参数执行,它会将这些参数传递给setup.exe

"C:\Users\Username\AppData\Local\Temp\CWB_341A7.tmp\setup.exe" --install-archive="C:\Users\Username\AppData\Local\Temp\CWB_341A7.tmp\CHROME.PACKED.7Z" --system-level

Chromium和Chrome的临时文件夹名称应该不同,因为我们修改了fork以使用CWB前缀

因此,setup.exe负责实际的安装和卸载过程。当您卸载Chromium fork setup.exe时,将使用以下参数执行:

 C:\Program Files (x86)\YourChromium\Application\66.0.3359.139\Installer\setup.exe --uninstall --system-level

注意:如果您通过--system-level,则会为所有用户安装它。

传递给mini_installer的参数将存储在注册表中,因此当您卸载时,相同的参数将传递给setup.exe。它通常应该存储在这里:

HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\CompanyName\Update\ClientState\{Your-Chromium-fork-GUID} (for system-level installations)

卸载Chromium前叉时,将会读取并使用UninstallArgumentsUninstallString的值。

希望有所帮助

编辑:

只需为可能认为有用的人添加此信息即可。安装程序有各种命令行选项,您可以在此处找到:

chrome\installer\util\master_preferences_constants.cc