📌  相关文章
📜  通过批处理文件以隐身方式打开 chrome (1)

📅  最后修改于: 2023-12-03 15:12:25.130000             🧑  作者: Mango

通过批处理文件以隐身方式打开 Chrome

在实际开发中,有时需要以隐身方式打开 Chrome 浏览器窗口,这里介绍一种通过批处理文件实现此目的的方法。

准备工作

需要使用以下两个工具:

  1. Chrome 命令行参数:可以通过命令行参数控制 Chrome 的行为。在此处需要使用 --incognito 参数以隐身方式打开 Chrome
  2. VBScript:一种支持通过脚本方式控制 Windows 的编程语言,我们将使用 VBScript 来控制打开 Chrome 窗口的行为
编写批处理文件
  1. 新建一个文本文件,将其命名为 open_chrome.bat
  2. 在文件中输入以下代码片段:
@echo off

set ChromePath=C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
set ChromeArgs=--incognito
set VBScriptPath=%~dp0open_chrome.vbs

start "" "%ChromePath%" %ChromeArgs% && wscript.exe "%VBScriptPath%"
  • set ChromePath:设置 Chrome 的安装路径,需要根据实际情况修改
  • set ChromeArgs:设置 Chrome 的命令行参数,这里使用 --incognito 以隐身方式打开
  • set VBScriptPath:设置 VBScript 文件的路径,这里使用 %~dp0 表示当前文件所在目录
  • start:使用 start 命令以异步方式启动 Chrome 窗口
  • && wscript.exe "%VBScriptPath%":当 Chrome 窗口启动后,立即运行 VBScript 文件隐藏 Chrome 窗口
  1. 保存文件并关闭
编写 VBScript 文件
  1. 新建一个文本文件,将其命名为 open_chrome.vbs
  2. 在文件中输入以下代码片段:
Set WshShell = CreateObject("WScript.Shell")
WshShell.AppActivate "chrome"

WScript.Sleep 1000  ' 等待 1 秒,确保 Chrome 十分稳定

WshShell.SendKeys "^w"  ' 关闭当前拥有焦点的窗口
WshShell.SendKeys "^w"  ' 再次关闭,确保关闭所有 Chrome 窗口

Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run """C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"" --incognito", 0
  • WshShell.AppActivate "chrome":使 Chrome 窗口拥有焦点
  • WScript.Sleep 1000 :等待 1 秒钟,确保 Chrome 窗口加载完成
  • WshShell.SendKeys "^w":向 Chrome 窗口发送 Ctrl + W 快捷键,关闭浏览器窗口
  • objShell.Run:以隐身方式再次打开 Chrome 窗口
  1. 保存文件并关闭
运行批处理文件
  1. 双击 open_chrome.bat,即可以隐身方式打开 Chrome 窗口
注意事项
  1. 因为 VBScript 要求在打开任何窗口之前首先设置焦点,所以批处理文件中需要先打开 Chrome 窗口,然后再通过 VBScript 隐藏它
  2. 为了确保稳定性,在本例中等待了 1 秒钟才执行操作,具体时间可以根据实际情况进行调整
  3. 如果需要打开指定的网页,可以在 VBScript 中使用 WshShell.SendKeys 命令向 Chrome 窗口发送输入命令,将网页地址输入进去,例如:
WshShell.SendKeys "https://www.google.com"
WshShell.SendKeys "{ENTER}"