如果从 shell 启动,Google Chrome 会在错误的配置文件中打开

如果从 shell 启动,Google Chrome 会在错误的配置文件中打开

我有一个Google 便携版安装到C:\ProgramData\GoogleChromePortable\目录中。它有一个单一的Default用户配置文件,根据我的需求进行定制。只要我自己打开 Chrome 并按预期浏览互联网,一切就都正常。

当我从 shell 或任何其他包含网络链接的程序(例如,从防病毒软件的对话框)打开 html 页面时,我的 Chrome 会使用一个奇怪的配置文件打开一个新窗口。这看起来像一个初始配置文件,没有安装扩展和常规浏览历史记录。然而,这始终是相同的配置文件,因为它在其历史记录中存储了我从此类外部程序打开的所有页面。

经过短暂的调查,我发现这个配置文件(另一个Default配置文件)会自动在以下位置创建:C:\Users\<username>\AppData\Local\Google\Chrome\。如果我删除它,每次我尝试从外部程序打开网络链接时,它都会重新创建。

问题是:我如何配置 Chrome,让它使用我的真实的默认配置文件? 如果当我单击外部程序中的链接时 Chrome 已经在运行,则理想情况下应该在现有的 Chrome 窗口中打开一个选项卡,而不是打开一个新的单独窗口。

答案1

不要使用便携版的Chrome,并正确安装它。

C:\Users\<username>\AppData\Local\Google\Chrome\是 Chrome 配置文件的标准位置。

如果您想快速地从一个系统转移到另一个系统,便携式应用程序是很好的选择,但它们的集成度不佳。如果您想集成(打开 shell 等),请进行适当的安装,以便可以集成。

答案2

与@satyanveshi类似,但对我有用的是编辑HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ChromeHTML\shell\open\command和添加类似的内容"--profile-directory=Profile 3"(即指向%USERPROFILE%\AppData\Local\Google\Chrome\User Data包含配置文件数据的子目录。请注意包含空格的目录名需要引号。另请注意,Chrome 现在似乎使用它--single-argument %1来传递包含空格的 URL/文件参数。这避免了必须在 %1 周围加上引号,从而可能遇到其他问题。我猜它告诉 Chrome,所有其余的参数以及它们之间的任何空格都应该捆绑在一起以形成一个参数。(见https://chromium.googlesource.com/chromium/src/+/master/base/command_line.h

答案3

此类链接由操作系统的默认浏览器处理(我不确定便携式浏览器是否可以设置为默认浏览器)。路径 C:\Users\\AppData\Local\Google\Chrome 属于独立的 Google Chrome。因此,您似乎也安装了独立版的 Google Chrome。

答案4

答案在于编辑 Windows(仅适用于 Windows)注册表(默认)项:

谷歌浏览器 HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ChromeHTML\shell\open\command

Google Chrome 测试版频道 HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ChromeBHTML\shell\open\command

指向您存储它们的配置文件(和缓存,如果您愿意的话)目录。例如:

“C:\Program Files (x86)\Google\Chrome Beta\Application\chrome.exe” --disk-cache-dir="R:\Cache\Chrome" --user-data-dir="R:\Profile\Chrome”

然后,以下命令将使用 Chrome 安装在以下位置启动(从 shell 或 OS 调用)URL 命令C:\Program 文件(x86)\Google\Chrome Beta\Application\chrome.exe使用磁盘缓存目录时路径:\缓存\Chrome和配置文件目录R:\个人资料\Chrome

现在,单击 Windows 定义为由您的 Google 应用程序作为操作系统默认打开的任何 http 链接,都会从上面的注册表位置读取其启动标志,并使用您指定的配置文件(和缓存位置)。

是的,这是一个临时解决方案。

是的,谷歌应该实现适当的配置文件管理/选择(在启动时,不管 Chrome 是如何调用的),就像 Firefox 长期以来所做的那样。

他们不太可能会这样做,因为几年前就有人好心地要求他们实施这一点(以妥善管理多用户情况),但什么也没发生。

更多内容请见:

https://productforums.google.com/forum/?hl=en#!msg/chrome/DdCRVseIfWI/6Esqweei4lsJ

相关内容