IPv6InterfaceProperties.Index 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得與網際網路通訊協定第 6 版 (IPv6) 位址相關聯的網路介面的索引。
public:
abstract property int Index { int get(); };
public abstract int Index { get; }
member this.Index : int
Public MustOverride ReadOnly Property Index As Integer
屬性值
Int32 值,這個值包含 IPv6 位址的網路介面索引。
範例
下列程式代碼範例會取得 IPv6InterfaceProperties 物件,並顯示其數據。
void DisplayIPv6NetworkInterfaces()
{
array<NetworkInterface^>^nics = NetworkInterface::GetAllNetworkInterfaces();
IPGlobalProperties ^ properties = IPGlobalProperties::GetIPGlobalProperties();
Console::WriteLine( "IPv6 interface information for {0}.{1}",
properties->HostName, properties->DomainName );
int count = 0;
System::Collections::IEnumerator^ myEnum24 = nics->GetEnumerator();
while ( myEnum24->MoveNext() )
{
NetworkInterface ^ adapter = safe_cast<NetworkInterface ^>(myEnum24->Current);
// Only display informatin for interfaces that support IPv6.
if ( !adapter->Supports( NetworkInterfaceComponent::IPv6 ) )
{
continue;
}
count++;
Console::WriteLine();
Console::WriteLine( adapter->Description );
// Underline the description.
Console::WriteLine( String::Empty->PadLeft( adapter->Description->Length, '=' ) );
IPInterfaceProperties ^ adapterProperties = adapter->GetIPProperties();
// Try to get the IPv6 interface properties.
IPv6InterfaceProperties ^ p = adapterProperties->GetIPv6Properties();
if ( !p )
{
Console::WriteLine( "No IPv6 information is available for this interface." );
continue;
}
// Display the IPv6 specific data.
Console::WriteLine( " Index ............................. : {0}",
p->Index );
Console::WriteLine( " MTU ............................... : {0}",
p->Mtu );
}
if (count == 0)
{
Console::WriteLine(" No IPv6 interfaces were found.");
Console::WriteLine();
}
}
public static void DisplayIPv6NetworkInterfaces()
{
NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
IPGlobalProperties properties = IPGlobalProperties.GetIPGlobalProperties();
Console.WriteLine("IPv6 interface information for {0}.{1}",
properties.HostName, properties.DomainName);
int count = 0;
foreach (NetworkInterface adapter in nics)
{
// Only display informatin for interfaces that support IPv6.
if (!adapter.Supports(NetworkInterfaceComponent.IPv6))
{
continue;
}
count++;
Console.WriteLine();
Console.WriteLine(adapter.Description);
// Underline the description.
Console.WriteLine(String.Empty.PadLeft(adapter.Description.Length,'='));
IPInterfaceProperties adapterProperties = adapter.GetIPProperties();
// Try to get the IPv6 interface properties.
IPv6InterfaceProperties p = adapterProperties.GetIPv6Properties();
if (p == null)
{
Console.WriteLine("No IPv6 information is available for this interface.");
Console.WriteLine();
continue;
}
// Display the IPv6 specific data.
Console.WriteLine(" Index ............................. : {0}", p.Index);
Console.WriteLine(" MTU ............................... : {0}", p.Mtu);
}
if (count == 0)
{
Console.WriteLine(" No IPv6 interfaces were found.");
Console.WriteLine();
}
}
Public Shared Sub DisplayIPv6NetworkInterfaces()
Dim nics As NetworkInterface() = NetworkInterface.GetAllNetworkInterfaces()
Dim properties As IPGlobalProperties = IPGlobalProperties.GetIPGlobalProperties()
Console.WriteLine("IPv6 interface information for {0}.{1}", properties.HostName, properties.DomainName)
Dim count as Integer = 0
Dim adapter As NetworkInterface
For Each adapter In nics
' Only display informatin for interfaces that support IPv6.
If adapter.Supports(NetworkInterfaceComponent.IPv6) = False Then
GoTo ContinueForEach1
End If
count += 1
Console.WriteLine()
Console.WriteLine(adapter.Description)
' Underline the description.
Console.WriteLine(String.Empty.PadLeft(adapter.Description.Length, "="c))
Dim adapterProperties As IPInterfaceProperties = adapter.GetIPProperties()
' Try to get the IPv6 interface properties.
Dim p As IPv6InterfaceProperties = adapterProperties.GetIPv6Properties()
If p Is Nothing Then
Console.WriteLine("No IPv6 information is available for this interface.")
GoTo ContinueForEach1
End If
' Display the IPv6 specific data.
Console.WriteLine(" Index ............................. : {0}", p.Index)
Console.WriteLine(" MTU ............................... : {0}", p.Mtu)
ContinueForEach1:
Next adapter
if count = 0 then
Console.WriteLine(" No IPv6 interfaces were found.")
Console.WriteLine()
End if
End Sub
備註
如果這個屬性的值是零,這個介面不支援 IPv6。