【问题标题】:VB Script open secure web page programmaticallyVB 脚本以编程方式打开安全网页
【发布时间】:2018-10-11 12:05:42
【问题描述】:

我正在编写一个 VB 脚本代码,作为 cimplicity 对象的一部分。该代码基本上需要用特定的URL打开IE并自动登录到网页。登录是一个“windows 安全”弹出窗口。我可以务实地登录吗?

这是我的代码的一部分:

On Error GoTo ERR_TRP
Dim IE
Dim UID As CimObjectVariable
Dim PWD As CimObjectVariable
Dim URL As CimObjectVariable

Dim sUID As String
Dim sPWD As String
Dim sURL As String

Set UID = CimGetScriptOwner().GetVariable("USER")
Set PWD = CimGetScriptOwner().GetVariable("PWD")
Set URL = CimGetScriptOwner().GetVariable("IP")
sUID = UID.Value
sPWD = PWD.Value
sURL = URL.Value
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = 1 
IE.navigate sURL
Sleep(1000)

Err_Trp:
    x = MSGBOX ("Cannot open the camera Please check User-Password-IP", 0 , "Eror")

【问题讨论】:

  • Dim ... As 在 VBS 中不起作用,VBS 中的所有变量都有 Variant 类型。只需使用Dim 而不使用As。你能分享给你这样的弹出窗口(或任何类似的)的网址吗?
  • 对不起,我不能分享。这是公司的内部 URL

标签: internet-explorer vbscript


【解决方案1】:

正如 omegastripes 所写,您不能在 VBS 中声明可变数据类型,但是要在导航到页面后将用户名/密码发送到弹出登录窗口,请使用以下代码:

Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.AppActivate "Windows Security"
WshShell.SendKeys "YourUserID"
WScript.Sleep 100
WshShell.SendKeys "{TAB}" 
WScript.Sleep(100)
WshShell.SendKeys "YourPassword"
WScript.Sleep 100
WshShell.SendKeys "{TAB}"
WScript.Sleep 100
WshShell.SendKeys "{TAB}"
WScript.Sleep 100
WshShell.SendKeys "{ENTER}"

【讨论】:

  • 只有一个问题,如何将 IE 页面置于我的应用程序之上?
  • WshShell.AppActivate IE.Name
  • 非常感谢。另一个问题:我可以问“如果激活了 Windows 安全性然后执行登录”吗?因为不是所有的 URL 都有登录
猜你喜欢
  • 1970-01-01
  • 2015-02-27
  • 2010-12-12
  • 2012-01-28
  • 1970-01-01
  • 2017-04-16
  • 2013-02-23
  • 2020-04-07
  • 1970-01-01
相关资源
最近更新 更多