使用脚本管理Windows网络第七部分.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
使用脚本管理Windows网络第七部分

使用脚本管理Windows网络 第七部分:修复神秘的错误 本章关于使用脚本管理Windows网络,阐述了当使用我们之前开发的ChangeIPAddress.vbs脚本去修改远程计算机IP地址时,如何修复其产生的“远程程序调用失败”的错误。原文发表于WindowsN。 在前面的文章“远程脚本初探”,我们使用之前开发的ChangeIPAddress.vbs脚本,将它修改了后用以修改远程计算机的IP地址。下面就就是我们修改的脚本: Option?Explicit Dim?objWMIService Dim?objNetAdapter Dim?strComputer????? Dim?strAddress????? Dim?arrIPAddress Dim?arrSubnetMask Dim?colNetAdapters Dim?errEnableStatic If?WScript.Arguments.Count?=?0?Then ?????Wscript.Echo?Usage:?ChangeIPAddress.vbs?new_IP_address ?????WScript.Quit End?If strComputer?=?xp2 strAddress?=?Wscript.Arguments.Item(0) arrIPAddress?=?Array(strAddress) arrSubnetMask?=?Array() Set?objWMIService?=?GetObject(winmgmts:\\??strComputer??\root\cimv2) Set?colNetAdapters?=?objWMIService.ExecQuery(Select?*?from?Win32_NetworkAdapterConfiguration?where?IPEnabled=TRUE) For?Each?objNetAdapter?in?colNetAdapters ?????errEnableStatic?=?objNetAdapter.EnableStatic(arrIPAddress,?arrSubnetMask) Next 这一行: strComputer?=?xp2 告诉我们,脚本的目标计算机名是XP2。远程计算机XP2原先的IP地址是3。 现在,当我们从管理工作站XP上输入ChangeIPAddress.vbs 5运行脚本时,出现了下列情况: 1.?脚本起作用了,如XP2的地址将从3 改为5; 2.?脚本需要花费很长的时间才执行完; 3.?脚本返回以下错误: C:\tools\ChangeIPAddress.vbs(23,?6)?SWbemObjectEx:?The?remote?procedure?call?failed. 我们怎样处理这些结果呢? 简单的解决方法 其实我们可以对自己说,“好了,既然它已经起作用了,那么就让我们忽略这个错误吧。”对于这种说法是可以理解的。毕竟,任何现实的管理员都知道IT不是一个精确的科学工作,当我们无法设计妥善的解决方法时,我们往往最终采用“应急方案”来解决问题。 因此,我们该如何忽略这个错误呢?只需在标头节添加以下这一行: On?Error?Resume?Next 换句话说,我们脚本的头部将是这样的: Option?Explicit On?Error?Resume?Next Dim?objWMIService etc. 现在,我们就不会看到错误,而且我们的脚本也可以正常工作了。但是,它仍然需要一段较长的时间来执行,事实上,足足超过一分钟。这又该怎么办呢? 解决错误讯息 错误消息有时是很隐秘的,这是其中的一个。这里是又一个错误消息: SWbemObjectEx:?The?remote?procedure?call?failed. 这是产生错误的那一行代码: errEnableStatic?=?objNetAdapter.EnableStatic(arrIPAddress,?arrSubnetMask) 现在这行代码工作了(如,目标计算机IP地址修改了)但它抛出了一个错误,为什么呢? 让我们先设法理解SWebObjectEx的作用。从MSDN上快速搜索到这个网页,上面有这样的说明: Extends?the?functionality?of?SWbemObject.?This?object?adds?the?Refresh?method?for?SWbemRefresher?objects.? 很好。这样看来SWbemObjectEx只是给SWbemObject增加了更多的功能。那么,SWbemObject又是什么呢? Contain

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档