2

在 Windows 7 环境中使用 Google Chrome 38.0.2125.111 m。它由批处理文件启动并设置为转到特定(内部)URL。Windows 环境将被锁定,只允许用户使用少数几个选项。

正在使用 Chrome,因为 IE 将访问不同的站点。无需赘述,在一个浏览器上使用这两个站点允许用户访问不属于他们的帐户。两种浏览器都将使用两个批处理文件之一启动。Chrome 批处理文件提供用户名和密码以绕过该应用程序上的登录屏幕。

为了避免在 Chrome 中打开多个窗口,使用了以下批处理文件:

taskkill /f /t /im chrome.exe > NUL
ping -n 3 127.0.0.1 > NUL
START /max chrome "http://myinternalwebsite?uid=x&pwd=y"

Taskkill 用于关闭 chrome(/f = 强制 /t = 终止进程和任何子进程 /im = 图像名称)。

如果 Chrome 会话关闭(使用屏幕右上角的 X),批处理文件可以正常工作。但是,如果已经有一个 chrome 实例正在运行,我们会看到带有皱眉文件夹的黄色栏和一条消息:

谷歌浏览器没有正确关闭。要重新打开您打开的页面,请单击恢复。

启动 Google Chrome 时,我尝试了几个命令行选项,但没有一个会阻止消息显示。我试过的是:

  • --禁用恢复会话状态
  • --disable-session-crashed-bubble
  • --隐身

其中。我已经尝试过 Chrome 中的一些设置,但没有一个(还)起作用。--incognito 选项有效 - 有点。它不断阻止插件,其中之一是 Silverlight - 网站运行的主要组件之一。即使它确实删除了该消息,它也会使站点无法正常运行。

使用 Taskkill 刷新任何现有的 Chrome 会话的目的是防止用户打开十几个不同的 Chrome 实例。

有什么方法可以防止用户打开多个不会让 Chrome 认为它没有正确关闭的 Chrome 实例?鉴于用户限制,我不确定用于编辑 Chrome 文件夹中的首选项文件的脚本/批处理文件是否有效。扩展可能是一种选择,但第三方应用程序不会。

将不胜感激任何想法或帮助。

谢谢!

4

1 回答 1

1

Chromium 将退出状态写入首选项文件。当它启动时,它会写入首选项文件:“exited_cleanly”:false

并在干净退出时写入首选项文件:“exited_cleanly”:true

为防止出现有关 unclean 关闭的消息,请确保您在 Preferences 文件中写入了 "exited_cleanly": true

在我在 Raspberry Pi 上运行的 Linux kiosk 上,这个添加到 /etc/rc.local 的 sed 命令行永久修复了问题:

sed -i 's/exited_cleanly\":\ false/exited_cleanly\":\ true/g' /home/pi/.config/chromium/Default/Preferences

于 2015-02-05T17:46:17.133 回答