Windows installer Chromium-如何使用mini_installer.exe制作实际安装程序
从源代码构建chromium后,您可以通过运行Windows installer Chromium-如何使用mini_installer.exe制作实际安装程序,windows-installer,chromium,Windows Installer,Chromium,从源代码构建chromium后,您可以通过运行 ninja -C out\BuildFolder mini_installer 这可以正常工作,并在out\BuildFolder中创建一个mini_installer.exe 但是,当我启动mini_installer.exe时,它只会启动Chrome。它没有打开一个好的安装程序界面 因此,我使用InnoSetup安装chromium文件,而我甚至没有使用mini_installer.exe 有人能描述一下这个“迷你安装程序”应该完成什么任务吗
ninja -C out\BuildFolder mini_installer
这可以正常工作,并在out\BuildFolder
中创建一个mini_installer.exe
但是,当我启动mini_installer.exe时,它只会启动Chrome。它没有打开一个好的安装程序界面
因此,我使用InnoSetup安装chromium文件,而我甚至没有使用mini_installer.exe
有人能描述一下这个“迷你安装程序”应该完成什么任务吗?它能让我不必为我的Chromium fork设计自己的InnoSetup安装程序吗
mini_installer
只是一个打包器,它打包了以下文件:
1. CHROME.PACKED.7z
2. setup.exe
这些文件应该存在于您的构建文件夹中
CHROME.PACKED.7z
packsCHROME.7z
包括您的CHROME文件和文件夹
mini_installer
将把这两个文件提取到一个临时目录,然后执行setup.exe
。例如,如果使用--系统级
参数执行mini_installer.exe
,它将把这些参数传递给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
Chrome和Chrome的临时文件夹名称应该不同,因为我们修改了fork以使用CWB
前缀
因此,它是负责实际安装和卸载过程的setup.exe
。卸载Chromium forksetup.exe时,将使用以下参数执行:
C:\Program Files (x86)\YourChromium\Application\66.0.3359.139\Installer\setup.exe --uninstall --system-level
注意:如果您通过了--系统级,那么它将为所有用户安装
传递给mini_installer
的参数将存储在注册表中,因此在卸载setup.exe时,相同的参数将传递给setup.exe
。通常应将其存储在以下位置:
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\CompanyName\Update\ClientState\{Your-Chromium-fork-GUID} (for system-level installations)
卸载Chromium fork时,将读取并使用UninstallArguments
和UninstallString
的值
希望有帮助
编辑:
只需为任何可能发现此信息有用的人添加此信息。安装程序有多种命令行选项,您可以在此处找到:
chrome\installer\util\master\u preferences\u constants.cc
我可以为您提供有关此问题的详细信息。我现在正在写:)谢谢!我会删除我的答案是的,这很有帮助。问题-如果我想在chromium启动时(最重要的是日志记录)添加一些命令行参数,该怎么办。有没有办法a)告诉mini_安装程序不要启动chrome只是安装,或者B)我能告诉它总是给chrome一些参数吗?因为如果它立即启动chromium,我将无法在“First Run=true”期间看到日志记录chromium已经支持日志记录:您也可以添加或修改现有的命令行参数或开关。现有的开关可以在这里找到:src\chrome\common\chrome\u switches.cc
要添加您自己的开关,请参阅base::CommandLine类的方法:src\base\command\u line.cc
对不起,我不清楚。我想问的是如何让mini_installer.exe
使用启动chrome--启用日志记录--v=1
以便我的第一次运行具有日志记录功能?您应该修改chrome源代码来实现这一点。如果打开此文件:src\chrome\browser\first\u run\first\u run.cc
,则有一个方法IsChromeFirstRun
将返回一个布尔值,指示是否首次运行。如果它返回true,那么您可以附加该开关,但是您必须再次修改Chromium源代码。顺便说一句,如果您传递--系统级
参数,那么我确信它不会启动Chromium。虽然我可能错了,但是试试看