欢迎来到天天文库
浏览记录
ID:42130562
大小:94.32 KB
页数:8页
时间:2019-09-08
《07使用脚本管理windows网络第七部分》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、使用脚本管理Windows网络第七部分:修复神秘的错误木章关于使用脚本管理Windows网络,阐述了当使用我们之前开发的ChangeTPAddress.vbs脚本去修改远程计算机TP地址时,如何修复其产生的“远程程序调用失败”的错误。原文发表于WindowsNctworking.com。在前面的文章“远程脚本初探”,我们使用之前开发的ChangelPAddress.vbs脚本,将它修改了后用以修改远程计算机的IP地址。下面就就是我们修改的脚木:OptionExplicitDimobjWMIServiceDimobjNctAdapterDimstrComputerDimstrA
2、ddressDimarrlPAddressDimarrSubnetMaskDimcolNetAdaptersDimerrEnableStaticIfWScripArguments.Count二0ThenWscript.Echo"Usage:ChangelPAddress.vbsnew_IP_address〃WScript.QuitEndIfstrComputer=〃xp2〃strAddress=WscripArguments.Item(0)arrlPAddress二Array(strAddress)arrSubnetMask二Array(〃255・255.255.0〃)Set
3、objWMIService二GctObjeet("winmgmts:\〃&strComputcr&"rootcimv2,z)SetcolNetAdapters=objWMIService.ExecQuery(Z/Select*fromWin32_NetworkAdapterConfigurationwhereIPEnabled二TRUE")ForEachobjNetAdapterincolNetAdapterserrErmbleStatic=objNetAdapter.EnableStatic(arrlPAddress,arrSubnetMask)Next这一行:str
4、Computer二〃xp2〃告诉我们,脚本的目标计算机名是XP2。远程计算机XP2原先的IP地址是172.16.11.43o现在,当我们从管理工作站XP上输入ChangelPAddress.vbs172.16.11.65运行脚本时,岀现了下列情况:1.脚本起作用了,如XP2的地址将从172.16.11.43改为172.16.11.65;2.脚本需要花费很长的时间才执行完;3.脚本返冋以下错误:C:tools'ChemgeTPAddress.vbs(23,6)SWbemObjectEx:Theremoteprocedurecallfailed.我们怎样处理这些结果呢?简单的解
5、决方法其实我们可以对自己说,“好了,既然它已经起作用了,那么就让我们忽略这个错谋吧。”对于这种说法是可以理解的。毕竟,任何现实的管理员都知道IT不是一个精确的科学工作,当我们无法设计妥善的解决方法时,我们往往最终采用“应急方案”来解决问题。因此,我们该如何忽略这个错误呢?只需在标头节添加以下这一行:OnErrorResumeNext换句话说,我们脚本的头部将是这样的:OptionExplicitOnErrorResumeNextDimobjWMIServiceetc.现在,我们就不会看到错误,而且我们的脚本也口J以正常工作了。但是,它仍然需要一段较长的时间來执行,事实上,足足
6、超过一分钟。这又该怎么办呢?解决错误讯息错误消息有时是很隐秘的,这是其中的一个。这里是乂一个错误消息:SWbemObjectEx:Theremoteprocedurecallfailed.这是产生错误的那一行代码:crrEnablcStatic二objNctAdaptcr・EnablcStatic(arrlPAddrcss,arrSubnctMa.sk)现在这行代码工作了(如,目标计算机IP地址修改了)但它抛岀了一个错误,为什么呢?让我们先设法理解SWebObjectEx的作用。从MSDN±快速搜索到这个网页,上面有这样的说明:Extendsthefunctionalityo
7、fSWbemObject.ThisobjectaddstheRefreshmethodforSWbemRefresherobjects.很好。这样看SWbemObjectEx只是给SWbemObject增加了更多的功能。那么,SWbcmObjcct又是什么呢?ContainsandmanipulatesasingleWM1objectclassorinstance.那么,这是又意味着什么呢?网页上告诉了我们很多,但是却又相当怪异。但是,简而言之,SWbemObject(以及SWbemObjectEx)是
此文档下载收益归作者所有