在VBS中询问选项

时间:2016-04-22 07:09:27

标签: internet-explorer vbscript proxy windows-10

我是VBS脚本新手,需要您的帮助和建议,让我的脚本可以选择。

我的工作网络使用代理而我的家庭网络没有,我设法让脚本工作,以便在我需要时将代理从开启切换到关闭,但这仍然让我想知道它是启用还是禁用

我希望VBS脚本能够问我“

  
      
  1. 启用代理/ 2.禁用代理
  2.   

“然后浏览对应于该选项的代码部分。

我没有任何VBS经验,我对此完全不了解,并希望对此有任何帮助。

Option Explicit 
Dim WSHShell, strSetting
Dim ObjShell
Set WSHShell = WScript.CreateObject("WScript.Shell")

'Elevate VBS to run as Administrator
If WScript.Arguments.length = 0 Then
    Set ObjShell = WScript.CreateObject("Shell.Application")
    ObjShell.ShellExecute "wscript.exe", """" & _
    WScript.ScriptFullName & """" &_
    " RunAsAdministrator", , "runas", 1
    Wscript.Quit
End if

'Determine current proxy setting and toggle to oppisite setting
strSetting = wshshell.regread("HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnable")
If strSetting = 1 Then 
NoProxy
Else Proxy
End If

'Subroutine to Toggle Proxy Setting to ON "Tested & Working"
Sub Proxy 
WSHShell.regwrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnable", 1, "REG_DWORD"
wscript.sleep 500
WSHShell.Exec "cmd /C netsh.exe winhttp import proxy source=ie"
End Sub

'Subroutine to Toggle Proxy Setting to OFF "Tested & Working"
Sub NoProxy 
WSHShell.regwrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnable", 0, "REG_DWORD"
wscript.sleep 500
WSHShell.Exec "cmd /C netsh.exe winhttp reset proxy"
End Sub

1 个答案:

答案 0 :(得分:0)

您可以使用是/否/取消MsgBox

answer = MsgBox("Enable Proxy?", vbYesNoCancel + vbQuestion)
Select Case answer
  Case vbYes : Proxy
  Case vbNo  : NoProxy
  Case Else  : WScript.Echo "Cancelled"
End Select