上一篇文章中介紹了WMI的基礎內容,主要講了WMI的屬性值的查看,文中還提到,WMI不僅具有屬性,還具有方法。這一節(jié)就來具體講一下如何調用WMI對象方法。 通過查看WMI對象,可以發(fā)現有不少的類同時具有屬性和方法。例如類"Win32_NetworkAdapterConfiguration",j就具有不少的方法和屬性,可以使用以下命令查詢: Get-WmiObject Win32_NetworkAdapterConfiguration | Get-Member -MemberType Methods | Format-List 列出的可用的方法有: DisableIPSec EnableDHCP EnableIPSec EnableStatic ReleaseDHCPLease RenewDHCPLease SetDNSDomain SetDNSServerSearchOrder SetDynamicDNSRegistration SetGateways SetIPConnectionMetric SetIPXFrameTypeNetworkPairs SetTcpipNetbios SetWINSServer ConvertFromDateTime ConvertToDateTime Delete GetType Put 同樣,使用如下命令查詢其屬性成員: Get-WmiObject Win32_NetworkAdapterConfiguration | Get-Member -MemberType Property | Format-List 通過以上命令查詢,類"Win32_NetworkAdapterConfiguration"有著方法"EnableDHCP"和屬性"IPEnabled"。下面,就用此這兩個成員來說明如何調用類的方法。 在這個類中,方法"EnableDHCP"的作用是開啟、關閉網絡適配器DHCP功能,屬性"IPEnable"則是一個bool值,反應是否有IP配置,有則為"true"反之則為"false"。用"IPEnable"可以過濾我們可以跳過任何斷開的、虛擬的網絡適配設備。 例如我們可以使用如下命令來改變DHCP設置: $Network=get-wmiobject win32_NetworkAdapterConfiguration | where{ $_.IPEnabled -eq "true"} foreach($NIC in $Network){ $NIC.EnableDHCP()} 這段腳本首先會判斷"IPEnable"是否為真,如果是,則開啟DHCP,否則不進行操作。 類"Win32_NetworkAdapterConfiguration"還具有另外的方法,如"$NIC.SetDNSServerSearchOrder()",可以使用這個方法改變DNS設置,改變是否“自動獲取DNS”的設置。 $Network=get-wmiobject win32_NetworkAdapterConfiguration | where{$_.IPEnabled -eq "true"} foreach($NIC in $Network){ $NIC.EnableDHCP() $NIC.SetDNSServerSearchOrder() } 需要注意的是,在調用不同的方法時,需要不同類型的數據參數,這一點需要非常留心。在前文查詢方法的命令輸出中,在"Definition"字段便可以看到具體數據格式要求: ![]() |
免責聲明:本站部分文章和圖片均來自用戶投稿和網絡收集,旨在傳播知識,文章和圖片版權歸原作者及原出處所有,僅供學習與參考,請勿用于商業(yè)用途,如果損害了您的權利,請聯系我們及時修正或刪除。謝謝!
始終以前瞻性的眼光聚焦站長、創(chuàng)業(yè)、互聯網等領域,為您提供最新最全的互聯網資訊,幫助站長轉型升級,為互聯網創(chuàng)業(yè)者提供更加優(yōu)質的創(chuàng)業(yè)信息和品牌營銷服務,與站長一起進步!讓互聯網創(chuàng)業(yè)者不再孤獨!
掃一掃,關注站長網微信