PCのIPアドレスを取得することについて少し混乱しています。複数のPCで実行されているwinformsアプリケーションがあります。特定の状況でのアプリケーションは、他のアプリにメッセージを送信する必要があります。そのために、アプリを実行している PC に関する情報をデータベースに書き込みます。データの中には IP アドレスがあります。アイデアは、WCF を使用して、メッセージを通信し、実行中のアプリケーションにブロードキャストすることです。したがって、問題は、機能する IP アドレスを取得する方法です。イーサネット IP アドレス、Wi-Fi アドレス、VMware アドレスを使用してノートブックをイメージします。それらのどれを選択する必要がありますか?
これが私が使用するコードです。ただし、ノートブックの場合は vmware アドレスを返しているため、役に立ちません。
private String GetMyIp()
{
String ipAddress =
System.Net.Dns.GetHostEntry(
System.Net.Dns.GetHostName())
.AddressList.First(i => i.AddressFamily.Equals(
System.Net.Sockets.AddressFamily.InterNetwork))
.ToString();
return ipAddress;
}
主なアイデアは、接続している IP アドレスを取得することです。明確であることを願っています。
前もって感謝します。