在我的工作地点,我们使用IE11和Chrome。我们有一系列Flash文件(通过Xelsius Crystal Dashboard创建)嵌入到访问外部XML数据源的HTM页面中,我们只能使用HTA应用程序来解决adobe安全限制。
我们在这些网页上提供的其他一些链接指向Google云端硬盘文档 目前他们在点击时总是在IE中打开。麻烦的是,在我的组织中,IE无法与Google云端硬盘一起使用,因此我们希望在Chrome中打开这些链接 - 这可以与Google文档一起使用
要求人们将默认浏览器更改为Chrome并不起作用,因为HTA应用程序始终在IE中打开,因此点击的任何后续链接也会在IE中打开。
我被告知可以使用" Shell"强制使用vbscript强制链接使用Chrome。命令后跟" Chrome的路径"和#34;要打开的网址"。
对于我们的htm页面上的任何导航按钮或链接,将使用onclick()事件调用该vbscript(例如 onclick =" openURLinChrome(' link-to-open')" etc)
我已经搜索了几天寻找创建此脚本的方法无济于事,所以我已经加入这里寻求帮助。这里有一些我认为可能有帮助的主题,但它们并不适用于我的问题。
有人可以建议解决方案吗?
非常感谢
答案 0 :(得分:8)
关键是获取Chrome.Exe的路径,该路径可以位于驱动器上的多个位置之一。幸运的是,它存储在注册表中;所以需要从VB脚本中读取注册表。然后只需用URL调用它。由于路径中可能包含空格,因此需要用引号括起来。
将以下内容复制到记事本中,保存为OpenChrome.vbs并在Windows资源管理器中双击它。
function readFromRegistry (strRegistryKey, strDefault)
Dim WSHShell, value
On Error Resume Next
Set WSHShell = CreateObject ("WScript.Shell")
value = WSHShell.RegRead (strRegistryKey)
if err.number <> 0 then
readFromRegistry= strDefault
else
readFromRegistry=value
end if
set WSHShell = nothing
end function
function OpenWithChrome(strURL)
Dim strChrome
Dim WShellChrome
strChrome = readFromRegistry ( "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\chrome.exe\Path", "")
if (strChrome = "") then
strChrome = "chrome.exe"
else
strChrome = strChrome & "\chrome.exe"
end if
Set WShellChrome = CreateObject("WScript.Shell")
strChrome = """" & strChrome & """" & " " & strURL
WShellChrome.Run strChrome, 1, false
end function
OpenWithChrome "http://www.microsoft.com"
答案 1 :(得分:2)
siteA = "https://google.com"
siteB = "https://bing.com"
siteC = "https://yahoo.com"
Const OneSecond = 1000
Set browobj = CreateObject("Wscript.Shell")
browobj.Run "chrome -url "&siteA
WScript.Sleep OneSecond*20
browobj.Run "chrome -url "&siteB
WScript.Sleep OneSecond*6
browobj.Run "chrome -url "&siteC
WScript.Sleep OneSecond*6
Set browobj = Nothing
答案 2 :(得分:0)
像这样。
Sub openURLinChrome(strLink)
Set wshShell = CreateObject("WScript.Shell")
strChromePath = "C:\Program Files (x86)\Google\Chrome\Application\Chrome.exe"
wshShell.Run strChromePath & " -url " & strLink, 1, false
End Sub