我正在创建一个应用程序,它打开一个Web浏览器(IE除外)并使用VBScript导航到特定的URL,并且如果已经打开,还会识别浏览器的实例。 浏览器可以是Safari,Chrome,Firefox或Opera。 直到现在我能够打开浏览器并使用VBScript导航到url。这就是我做的 -
特定于IE
Dim ieObj As Object
Set ieObj = CreateObject("InternetExplorer.Application")
ieObj.Visible = True
ieObj.Navigate url
url是浏览器应导航到的地址。
对于其他浏览器 -
Dim objShell
Set objShell = CreateObject("WScript.Shell")
objShell.Run ("""C:\Program Files (x86)\Mozilla Firefox\firefox.exe""") & url
Set objShell = Nothing
在这里,我可以更改应用程序的路径,并且打开正常。(我可以更改它更有意义的代码,这不是问题)。
现在,我已准备好检测IE浏览器实例的机制 -
Dim obj_Shell As Object
Dim obj_window_open As Object
Set obj_Shell = CreateObject("shell.application")
For Each obj_window_open In obj_Shell.Windows
//Logic to achieve functionality
//..End Each Loop
这段代码仅适用于IE和IE。
我们有什么办法可以为firefox和chrome等其他浏览器做同样的事情吗? 由于我几天前就开始学习VBScript,所以非常感谢帮助。
答案 0 :(得分:1)
如果您只想在系统上的标准浏览器中打开网站,请执行以下操作:
set objwsh = CreateObject("WScript.Shell")
objwsh.Run "http://stackoverflow.com/"
另一方面,这是一个脚本,可以在正在运行的进程中搜索特定的名称(或开头)。
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" _
& ".\root\cimv2")
Set colProcesses = objWMIService.ExecQuery _
("Select * from Win32_Process")
For Each objProcess in colProcesses
for each targetItem in Array("Firefox", "Chrome") ' ...
if lcase(left(objProcess.Name, len(targetItem))) = _
lcase(targetItem) then
msgbox targetItem & " seems to be running (" & objProcess.Name & ")"
end if
next
Next
...基于http://msdn.microsoft.com/en-us/library/aa394599%28v=vs.85%29.aspx
但这对你没有多大帮助,因为e。 G。 Firefox确实没有提供脚本界面。