IPv6InterfaceProperties.Index 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取与 Internet 协议版本 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
属性值
包含 IPv6 地址网络接口的索引的 Int32 值。
示例
下面的代码示例获取对象 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 ) == false )
{
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) == false)
{
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。