IPInterfaceProperties.MulticastAddresses Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets the multicast addresses assigned to this interface.
public:
abstract property System::Net::NetworkInformation::MulticastIPAddressInformationCollection ^ MulticastAddresses { System::Net::NetworkInformation::MulticastIPAddressInformationCollection ^ get(); };
public abstract System.Net.NetworkInformation.MulticastIPAddressInformationCollection MulticastAddresses { get; }
member this.MulticastAddresses : System.Net.NetworkInformation.MulticastIPAddressInformationCollection
Public MustOverride ReadOnly Property MulticastAddresses As MulticastIPAddressInformationCollection
Property Value
An MulticastIPAddressInformationCollection that contains the multicast addresses for this interface.
Examples
The following code example displays the multicast addresses for the network interfaces on the local computer.
void DisplayMulticastAddresses()
{
int count = 0;
Console::WriteLine( "Multicast Addresses" );
array<NetworkInterface^>^adapters = NetworkInterface::GetAllNetworkInterfaces();
System::Collections::IEnumerator^ myEnum15 = adapters->GetEnumerator();
while ( myEnum15->MoveNext() )
{
NetworkInterface ^ adapter = safe_cast<NetworkInterface ^>(myEnum15->Current);
IPInterfaceProperties ^ adapterProperties = adapter->GetIPProperties();
MulticastIPAddressInformationCollection ^ multiCast = adapterProperties->MulticastAddresses;
if ( multiCast->Count > 0 )
{
Console::WriteLine( adapter->Description );
System::Collections::IEnumerator^ myEnum16 = multiCast->GetEnumerator();
while ( myEnum16->MoveNext() )
{
MulticastIPAddressInformation ^ multi = safe_cast<MulticastIPAddressInformation ^>(myEnum16->Current);
Console::WriteLine( " Multicast Address ....................... : {0} {1} {2}",
multi->Address, multi->IsTransient ? "Transient" : "",
multi->IsDnsEligible ? "DNS Eligible" : "" );
count++;
}
Console::WriteLine();
}
}
if (count == 0)
{
Console::WriteLine(" No multicast addresses were found.");
Console::WriteLine();
}
}
public static void DisplayMulticastAddresses()
{
int count = 0;
Console.WriteLine("Multicast Addresses");
NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface adapter in adapters)
{
IPInterfaceProperties adapterProperties = adapter.GetIPProperties();
MulticastIPAddressInformationCollection multiCast = adapterProperties.MulticastAddresses;
if (multiCast.Count > 0)
{
Console.WriteLine(adapter.Description);
foreach (IPAddressInformation multi in multiCast)
{
Console.WriteLine(" Multicast Address ....................... : {0} {1} {2}",
multi.Address,
multi.IsTransient ? "Transient" : "",
multi.IsDnsEligible ? "DNS Eligible" : ""
);
count++;
}
Console.WriteLine();
}
}
if (count == 0)
{
Console.WriteLine(" No multicast addressses were found.");
Console.WriteLine();
}
}
Public Shared Sub DisplayMulticastAddresses()
Dim count as Integer = 0
Console.WriteLine("Multicast Addresses")
Dim adapters As NetworkInterface() = NetworkInterface.GetAllNetworkInterfaces()
Dim adapter As NetworkInterface
For Each adapter In adapters
Dim adapterProperties As IPInterfaceProperties = adapter.GetIPProperties()
Dim multiCast As MulticastIPAddressInformationCollection = adapterProperties.MulticastAddresses
If multiCast.Count > 0 Then
Console.WriteLine(adapter.Description)
Dim multi As IPAddressInformation
For Each multi In multiCast
Console.WriteLine(" Multicast Address ....................... : {0} {1} {2}", multi.Address, IIf(multi.IsTransient, "Transient", ""), IIf(multi.IsDnsEligible, "DNS Eligible", ""))
'TODO: For performance reasons this should be changed to nested IF statements
'TODO: For performance reasons this should be changed to nested IF statements
count += 1
Next multi
Console.WriteLine()
End If
Next adapter
if count = 0 then
Console.WriteLine(" No multicast addresses were found.")
Console.WriteLine()
End if
End Sub
Remarks
A multicast address identifies multiple computers. Packets sent to a multicast address are sent to all computers identified by the address.