程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> 【探索PowerShell 】【十四】使用WMI對象的方法

【探索PowerShell 】【十四】使用WMI對象的方法

編輯:關於.NET

上一篇文章中介紹了WMI的基礎內容,主要講了WMI的屬性值的查看,文中還提到,WMI不僅具有屬性,還具有方法。這一節就來具體講一下如何調用WMI對象方法。

通過查看WMI對象,可以發現有不少的類同時具有屬性和方法。例如類"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"字段便可以看到具體數據格式要求:

出處http://marui.blog.51cto.com/1034148/298520

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved