当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > 用vbs更改 Internet Explorer 的标题栏

VBScript
用vbs检索在运行对话框中键入的一系列命令的代码
编写可以打开文本文件并打乱在该文件中所找到的单词顺序的vbs脚本
在 HTA 中暂停脚本的方法
运行脚本之前,如何确定计算机上的默认脚本宿主的代码
用vbs实现删除名称中有撇号的文件夹
用vbs将输出内容写到屏幕以覆盖当前屏幕上的内容的方法
用vbs实现配置无人登录计算机时使用的屏幕保护程序
用vbs更改 Internet Explorer 的标题栏
用vbs读取文本文件的最后一行
用vbs实现重新启动 Internet Explorer
用vbs实现禁用服务
用vbs确定计算机是否有 USB 2.0 端口的代码
用vbs列出注册表中 Run 项中的所有项目
用vbs将名称截断以使其最多包含 16 个字符的代码
用vbs将本地文件替换为在文件服务器上找到的新版本
用vbs确定脚本正在哪一个帐户下运行
用vbs确定可移动驱动器的连接时间
用vbs记录屏幕保护程序的开始时间和结束时间
用vbs计算某个词在日志文件中的出现次数
vbs病毒的简单例子源代码解析

VBScript 中的 用vbs更改 Internet Explorer 的标题栏


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 56 ::
收藏到网摘: n/a

问:
您好,脚本专家!最近我注册了新的 Internet 服务,现在每次我启动 Internet Explorer 时窗口标题显示 Internet Explorer 由 Fabrikam.com 提供。如何更改 Internet Explorer 的标题栏?
-- AD
答:
您好,AD。您知道,您的问题让脚本专家在道德和伦理方面进退两难。在我们收到您的电子邮件的同时,我们收到了另一封电子邮件,其内容如下:
“您好,脚本专家!我知道许多公司配置了 Internet Explorer,从而其用户每次启动 Internet Explorer 时,窗口标题显示 Internet Explorer 由 Fabrikam.com 提供,希望我也能做到。如何更改 Internet Explorer 的标题栏?”
那么,标题栏显示 Internet Explorer 由 Fabrikam.com 提供是件好事,还是坏事呢?这让我们无所适从。但是,作为脚本专家,我们的工作不是告诉您孰是孰非。我们的工作只是为人们提供能够更改 Internet Explorer 标题栏的脚本:
复制代码 代码如下:

Const HKEY_CURRENT_USER = &H80000001
strComputer = "."
Set objReg = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
strKeyPath = "SOFTWARE\Microsoft\Internet Explorer\Main"
strValueName = "Window Title"
strValue = "The Scripting Guys"
objReg.SetStringValue HKEY_CURRENT_USER, strKeyPath, strValueName, strValue
默认情况下,Internet Explorer 显示任何打开网页的页面标题(若页面无标题则显示 URL)。标题之后尾随的是短语 Microsoft Internet Explorer。要将其更改为其他短语(或者完全删除附加的短语),您需要修改注册表值 HKCU\Software\Microsoft\Internet Explorer\Main\Window Title。例如,将窗口标题设置为 The Scripting Guys 后,Internet Explorer 将如下图所示:
Internet Explorer


非常酷,哈?如果将窗口标题更改为 Internet Explorer 由 Fabrikam.com 提供,那么它将在页面标题后显示。如果将值更改为空字符串 (""),那么在 Internet Explorer 标题栏将仅显示页面名称:

Internet Explorer
注意:如果您删除该注册表值会怎样?在这种情况下,Internet Explorer 将自动还原为显示默认短语 Microsoft Internet Explorer。
既然知道了标题栏的来龙去脉,那么脚本是怎样工作的呢?嗯,它首先定义一个名为 HKEY_CURRENT_USER 的常量并将其值设为 &H80000001;这告诉标准注册表提供程序(我们用来修改注册表的 WMI 对象)我们要使用哪个注册表单元。然后,我们可以使用下面这行代码绑定到本地计算机上的标准注册表提供程序:
Set objReg = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
是的,与 Windows Script Host 的注册表方法不同,您可以使用标准注册表提供程序读写远程计算机上的注册表。您只需将远程计算机的名称赋给变量 strComputer。
建立连接后,我们需要为下面三个不同的变量赋值:
• strKeyPath 是在其中找到窗口标题的注册表项。本例中,它是 Software\Microsoft\Internet Explorer\Main。
• strValueName 是我们要修改的注册表值的名称(窗口标题)。
• strValue 是要赋给窗口标题的新值。因为窗口标题是 REG_SZ 数据类型,故 strValue 必须是字符串值。如上文所述,将 strValue 设置为空字符串 ("") 时,将不会向 Internet Explorer 标题栏添加其他词语。
要真正改变注册表值,只需要调用 SetDWORDValue 方法,传递常量和三个变量(按以下顺序):
objReg.SetStringValue HKEY_CURRENT_USER, strKeyPath, strValueName, strValue
至此您已实现了您的目的。如果窗口标题不存在,也没有什么问题:SetStringValue 将首先创建新的注册表值,然后将所需的字符串赋给它。
对此,我们只能做到这些。从现在开始将由各位决定如何充分利用这一新发现的知识。请明智地做出选择。