当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > 用vbs实现更改计算机的说明的代码

VBScript
用vbs清空iis log 中自己登录ip的记录
vbs sendmail发邮件带附件方法
用vbs通过135端口执行命令的脚本
用vbs实现的瞬间关闭多个系统进程的脚本
vbs 中调用shell.application 简单函数
vbs wmi获取电脑硬件信息实例
用vbscript实现隐藏任务栏图标的脚本
vbs正则表达式代码
vbs版IP地理位置查询小偷
超级厉害的VBS定时提醒脚本 Remind.vbs
vbs实现的支持拖动的txt文本切割器
VBS如何察看或获得剪切板内容的脚本
VBS备忘录启动代码
VBS脚本使用WMI操作注册表的代码
vbs xmldom初次实战获取QQ签名的代码
VBS破坏性应用代码
vbs生成ACCESS数据里所有表的字段
vbs实现的图片自适应表格,目前最佳解决方案!
ProcessMagnifier.vbs进程查看
用于提取网易文件的hta代码

VBScript 中的 用vbs实现更改计算机的说明的代码


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

问:
您好,脚本专家!在使用 Windows 资源管理器连接到远程计算机时,可以在“详细信息”窗格中看见该计算机的说明。如何更改计算机的说明?
-- GF
答:
您好,GF。只是为了确保每个人都清楚我们谈论的内容,我们不会谈论 Active Directory 中的“说明”属性,而是谈论在整个网络范围内广播的计算机说明。(如果您真正想知道的是如何更改 Active Directory 中的“说明”属性,请参阅此“您好,脚本专家!”专栏。)
例如,在 Windows XP 中,您可通过执行以下操作来查看计算机说明:右键单击“我的电脑”,单击“属性”,然后查看“系统属性”对话框的“计算机名称”选项卡中的内容:
如您所述,如果使用 Windows 资源管理器连接到该计算机,则该说明还会出现在“详细信息”窗格中:
我们也认为这很令人兴奋。
那么如何更改计算机说明呢?是这样,您可以启动 Regedit.exe,然后手动更改注册表值 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\lanmanserver\parameters\srvcomment。或运行与以下脚本类似的脚本即可:

复制代码 代码如下:

Const HKEY_LOCAL_MACHINE = &H80000002
strComputer = "."
Set objRegistry = GetObject _
("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
strKeyPath = "System\CurrentControlSet\Services\lanmanserver\parameters"
strValueName = "srvcomment"
strDescription = "Description changed programmatically"
objRegistry.SetStringValue HKEY_LOCAL_MACHINE, strKeyPath, strValueName, strDescription
这当然容易啦;相处了这么长时间,您真的认为我们会突然开始为您的问题提供复杂而又费解的答案吗?我们先是定义一个名为 HKEY_LOCAL_MACHINE 的常量并将其值设置为 &H80000002;过一会儿,我们将使用此常量来告诉脚本我们要处理的注册表配置单元。然后,我们连接到 WMI 服务(在本例中,它位于本地计算机上,不过修改远程计算机上注册表的操作也差不多同样简单),并绑定到 StdRegProv 类。(而该类(正如我们所不厌其烦地告诉大家的)恰好位于 root\default 命名空间中。)
接下来,我们为三个变量赋值:
strKeyPath = "System\CurrentControlSet\Services\lanmanserver\parameters"
strValueName = "srvcomment"
strDescription = "Description changed programmtically"
变量 strKeyPath 表示注册表 HKEY_LOCAL_MACHINE 部分内的路径;strValueName 表示要更改的注册表值 (srvcomment);还有 strDescription,没错:strDescription 表示新的计算机说明。您的观察力很敏锐。
注意:我们想要说的是,你们在这方面要比我们强得多,但我们不想让经理对此有任何了解。的确如此:对于一位 Microsoft 经理来说,了解情况将是最为重要的!
现在我们所要做的就是调用 SetStringValue 方法,同时将 HKEY_LOCAL_MACHINE 和我们的三个变量作为方法参数进行传递:
objRegistry.SetStringValue HKEY_LOCAL_MACHINE, strKeyPath, strValueName, strDescription
像这样的脚本真的确实会使生活变得有意义,不是吗?
注意:请注意,即使是在注册表中进行此更改,新说明可能仍要在计算机重新启动后才会生效。这只不过是一个需要注意的地方。