由于在公司访问外网需要使用代理设置,而回家之后就又要取消代理设置。每天都得来回的设置IE Firefox 有道词典……有点烦了。
于是乎,想写个脚本自启动时控制一下,首先就得找到软件的代理设置是保存在哪儿的?找到后才能修改。。。
IE代理启用控制:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnable
FireFox的代理启用控制:
C:\Documents and Settings\User name\Application Data\Mozilla\Firefox\Profiles\lnll6u8i.default\prefs.js
有道词典的代理启用控制:
C:\Documents and Settings\User name\Local Settings\Application Data\Yodao\DeskDict\config.ini
然后看代码吧:
Const REG_INTERNET_SETTINGS_PATH = "Software\Microsoft\Windows\CurrentVersion\Internet Settings"
'=================================================================================================
' Check connectivity to company intranet (pinging win.dom.XXXXX.com).
'=================================================================================================
Function NetCheck
Dim objWMIService, objComputer, colPing
'You can find the explanations for the code as below from http://club.excelhome.net/thread-201282-1-1.html
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set colPing = objWMIService.ExecQuery _
("Select * from Win32_PingStatus Where Address = 'win.dom.XXXXX.com'")
For Each objComputer in colPing
If objComputer.StatusCode = 0 Then
NetCheck = True
Else
NetCheck = False
End If
Next
End Function
'=================================================================================================
' Replace the original string with the new string in a text file.
'=================================================================================================
Sub ReplaceInFiles(FilePath,originalStr,newStr)
Dim url,Retrieval,FileAllText
Dim FSObject,f1
On Error Resume next
Const ForReading = 1, ForWriting = 2
'Get the original text and replace
Set FSObject = CreateObject("scripting.FileSystemObject")
Set f1 = FSObject.OpenTextFile(FilePath,ForReading)
FileAllText=f1.ReadAll
FileAllText=Replace(FileAllText,originalStr,newStr)
'Create new file to repleace the original file
Set FSObject = CreateObject("scripting.FileSystemObject")
Set f1 = FSObject.CreateTextFile(FilePath, True)
f1.writeline FileAllText
If err.number <> 0 Then
Msgbox "There is some error:"& err.number&"-"&err.Description
Set FSObject = Nothing
Exit Sub
Else
'msgbox "Successfully replace!"
End If
End Sub
'=================================================================================================
' Main File
'=================================================================================================
Sub Main
On Error Resume Next
Dim objShell
'--- Set Objects ---
Set objShell = CreateObject("WScript.Shell")
'--- Exit if not connected to company intranet
If NetCheck = False Then
'Here 0 disable the proxy
objShell.RegWrite "HKEY_CURRENT_USER\" & REG_INTERNET_SETTINGS_PATH & "\ProxyEnable", 0, "REG_DWORD"
Call ReplaceInFiles("C:\Documents and Settings\User name\Application Data\Mozilla\Firefox\Profiles\lnll6u8i.default\prefs.js","user_pref(""network.proxy.type"", 1);","user_pref(""network.proxy.type"", 0);")
Call ReplaceInFiles("C:\Documents and Settings\User name\Local Settings\Application Data\Yodao\DeskDict\config.ini","USEPROXY=1","USEPROXY=0")
Msgbox "Successfully finish"
Set objShell = Nothing
Else
'Here 1 disable the proxy
objShell.RegWrite "HKEY_CURRENT_USER\" & REG_INTERNET_SETTINGS_PATH & "\ProxyEnable", 1, "REG_DWORD"
Call ReplaceInFiles("C:\Documents and Settings\User name\Application Data\Mozilla\Firefox\Profiles\lnll6u8i.default\prefs.js","user_pref(""network.proxy.type"", 0);","user_pref(""network.proxy.type"", 1);")
Call ReplaceInFiles("C:\Documents and Settings\User name\Local Settings\Application Data\Yodao\DeskDict\config.ini","USEPROXY=0","USEPROXY=1")
Msgbox "Successfully finish"
Set objShell = Nothing
End If
End Sub
Call Main
把代码保存到一个VBS文件(如proxysetting.vbs)放到自启动文件夹(C:\Documents and Settings\User name\Start Menu\Programs\Startup)下,每次插上网线启动机子,它就会自动设置代理设置。也可以放在桌面直接双击运行。
PS:这个脚本还有很大的改进空间,应该可以做成实时扫描,这样就不用每次插上网线启动机子,但是这样又得重启应用程序才能使代理设置生效。也许应该在脚本中加上重启应用程序的代码。
如果各位大牛有更好的方法,还望共享。
分享到:
相关推荐
通过VBS脚本可以实现对计算机硬件的控制,如网络适配器的启用与禁用等操作。本文详细介绍如何利用VBS脚本配合bat批处理实现“无线网络连接”与“本地连接”的自动切换,特别适用于需要频繁切换不同网络连接场景的...
### VBS脚本控制串口的简单示例 #### 知识点概述 本文将详细介绍一个简单的使用VBS(Visual Basic Scripting Edition)脚本来控制串口通信的例子。该示例程序非常精简,仅有十行代码,并附带了简单的注释说明。...
VBS 脚本语言教程 VBS 脚本语言教程是适合初学者的入门教程,旨在与大家分享 VBS 脚本语言的基础知识和编程技巧。通过本教程,读者可以学习 VBS 脚本语言的基本语法、变量、数组、函数等知识点,并掌握编写简单的 ...
VBS实例 44个 vbs脚本实例, VBS取QQ-TM号码的自动登录命令行.vbs 妙用脚本清除电脑中的痕迹.vbs 后台字典文件管理器.vbs 定时关机.vbs 列出管理工具集.vbs 旁注查询工具.vbs 中文姓名笔画计算(VBS脚本版).vbs ...
* 控制结构:VBScript 语言中控制结构包括条件语句、循环语句、选择语句等。 VBScript 的使用场景: * 自动化任务:VBScript 语言可以自动化各种任务,例如自动备份、自动发送邮件等。 * 系统管理:VBScript 语言...
- 引用并正确使用这些对象,VBS脚本即可实现从文本处理到系统控制等多种功能,相当于利用现有工具解决具体问题,避免了“从零开始”的资源浪费。 二、VBS脚本的编写与执行 VBS脚本的编写并不依赖于特定的开发环境...
VBS是基于Microsoft Visual Basic for Applications (VBA) 的一种脚本语言,它允许开发者通过简单的脚本命令来控制Windows环境下的各种对象。由于其简单易学的特点,VBS被广泛应用于Windows系统的管理和维护工作之中...
WinCC是西门子提供的一款用于监控和控制工业系统的软件,而C脚本和VBS脚本是WinCC中支持的两种脚本语言,分别代表C语言风格的脚本和Visual Basic Scripting Edition(VBS)风格的脚本。 1. WinCC脚本基础 在WinCC...
wincc vbs脚本手册 西门子 组态 脚本
### VBS脚本学习指南——基础知识与应用 #### 一、VBS脚本概述 VBS,即Microsoft Visual Basic Script Edition(微软可视化BASIC脚本版),是Microsoft为Windows操作系统提供的一种轻量级脚本语言。它基于Visual ...
在“VBS控制鼠标和按键的脚本”中,我们可以利用VBScript提供的功能来模拟用户对鼠标的点击、移动以及键盘的按键操作。这种技术在自动化测试、系统维护或创建用户自定义工具时非常有用。 首先,我们要了解VBScript...
VBS脚本编程是一种在Windows操作系统环境下非常流行的脚本语言编程方式。它是一种简单的编程语言,通常用于自动化Windows应用程序的管理任务。VBS是Visual Basic Script的简称,它是Visual Basic的一种轻量级脚本...
对于其他浏览器,如Chrome或Firefox,可能需要使用不同的方法或者使用它们的API(如Chrome的`chrome.exe --kiosk`或Firefox的`firefox.exe -private-window`)。 由于提供的压缩包文件名为`vbshtml.vbs`,我们可以...
标题“c++调用vbs脚本函数(Qt)”指出了一个具体的技术实践,即在Qt环境下,使用C++代码来调用VBScript中的函数。这通常是为了利用VBScript在处理Windows特定任务,如自动化、文件操作或与COM组件交互时的便利性。 ...
VBS脚本运行库手册之一(磁盘操作) VBS脚本运行库手册之二(磁盘操作) VBS脚本运行库手册之三(管理文件夹) VBS脚本运行库手册之四(管理文件夹) VBS脚本运行库手册之五(文件夹属性) VBS脚本运行库手册之...
VBS脚本开发工具是专为编写、调试和优化VBS脚本而设计的软件或平台,它们通常提供代码编辑器、调试器和语法高亮等特性,以提高开发效率和代码质量。 在提供的文件列表中,我们看到几个关键资源: 1. "Microsoft ...
在Windows操作系统中,批处理(BAT)脚本和Visual Basic Script(VBS)脚本是两种常见的自动化工具,用于执行一系列命令或者实现特定的功能。这个"windows常用bat/vbs脚本合集"可能是包含了多种实用脚本的集合,旨在...
VBS脚本,全称Visual Basic Script,是微软公司推出的一种基于Visual Basic编程语言的脚本版本。它是一种轻量级、解释型的编程语言,主要用于网页交互、系统管理、自动化任务等领域。VBS脚本教程是学习这种语言的...
helloworld vbs 脚本hellohelloworld vbs 脚本world vbs 脚本helloworld vbs 脚本helloworld vbs 脚本helloworld vbs 脚本
VB主要用于构建桌面应用程序,而VBS则常用于网页脚本和自动化任务。本文将详细探讨如何在VB中调用VBS脚本,以及相关的知识点。 首先,VB调用VBS脚本的主要目的是利用VBS的灵活性和简洁性来执行一些特定任务,如系统...