2016-11-14 34 views
0

ネットワークアダプタに存在する使用可能な帯域幅とIPアドレスを取得する方法を教えてください。 まず、私が何をしたかを伝えます。私は、WMIクラスのクエリを試しました。Win32_PerfFormattedDataWin32_PerfFormattedData_Tcpip_NetworkInterfaceWin32_PerfFormattedData - このクラスから、アダプタの現在の帯域幅を取得できます。 Win32_PerfFormattedData_Tcpip_NetworkInterface - このクラスから、アダプタに存在するIPアドレスを取得できます。 問題は、私は2つの間の関係を見つける方法を知らないです。これらの2つのクラスのプロパティの間に共通のプロパティが見つからないため、システムに複数のネットワークアダプタがあるとします。この問題を解決するのを手伝ってください。現在の帯域幅とネットワークアダプタのIPアドレスを取得する他の方法がある場合は、歓迎します。アダプタの帯域幅と使用可能なIPアドレスの取得

答えて

0

Win32_NetworkAdapterWin32_NetworkAdapterConfigurationを代わりに使用してください。ここでは、簡単なPowerShellスクリプトの例:Windows 8の上で

$objWMi = get-wmiobject -Query "Select * from Win32_NetworkAdapter where PhysicalAdapter = True" 

foreach ($obj in $objWmi) 
{ 
    write-host "AdapterType:" $obj.AdapterType 
    write-host "Caption:" $obj.Caption 
    write-host "CommunicationStatus:" $obj.CommunicationStatus 
    write-host "Description:" $obj.Description 
    write-host "DeviceName:" $obj.DeviceName 
    write-host "MACAddress:" $obj.MACAddress 
    write-host "Speed:" $obj.Speed 
    write-host "Name:" $obj.Name 

    $config = get-wmiobject -Query "select * from Win32_NetworkAdapterConfiguration where InterfaceIndex = $($obj.InterfaceIndex)" 
    foreach($data in $config) 
    { 
     write-host "NetworkAddress:" $config.IPAddress 
    } 

    write-host 
    write-host "########" 
    write-host 
} 

以降あなたの代わりにWin32_NetworkAdapterMSFT_NetAdapterクラスを使用する必要があります。またWin32_NetworkAdapterConfigurationは、IPv4構成データのみを返します。追加情報については、thisを参照してください。

+0

ありがとう –

関連する問題