.NET/ネットワークカードの各種情報を取得するサンプルコード
の編集
Top
/
.NET
/
ネットワークカードの各種情報を取得するサンプルコード
[
トップ
] [
編集
|
差分
|
履歴
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
.NET
.NET/.NETでpingを実現する・System.Net.NetworkInformation.Ping
.NET/ARPテーブルを取得し表示するサンプル・GetIpNetTable
.NET/CPUコア毎の使用率を取得する
.NET/CPU使用率を取得する
.NET/DateとDateTimeの違い
.NET/HttpClientを使って指定したURLのページを取得する
.NET/IPv4からMACアドレス取得する・SendARP
.NET/IPアドレスからホスト名を取得するサンプルコード
.NET/ListのStringをカンマ区切りにする方法
.NET/Listを配列に配列をListに変換する
.NET/NET6.0でSQLiteを使ってみた Microsoft.Data.Sqlite
.NET/ODBCを使用してデータベースに接続しSQLを実行するサンプル
.NET/String.Splitで空要素を残す、空要素を削除するオプションについて
.NET/StringBuilderをバイト配列に変換する
.NET/Stringの配列をCSVにする方法
.NET/UNIX時間への変換・DateTimeOffset
.NET/UNIX時間をDateTimeOffset, DateTimeにする
.NET/Web APIからJSONを取得し値を表示する・DataContractJsonSerializer
.NET/WMIを使って物理メモリ・仮想メモリの使用量等を取得する
.NET/アルファベットを大文字、小文字に変換する
.NET/インストールされているODBCドライバ一覧を取得するサンプル
.NET/コンソールプログラムからトースト通知をするサンプル
.NET/サスペンド前・復帰の時に処理を行いたい
.NET/スペースのみの文字列、空の文字列、サイズ0の文字列を判定する
.NET/スリープの抑止、モニター電源オフの抑止のサンプルコード
.NET/ターゲットにしている.NETを確認する操作手順
.NET/テキストファイルの読込・ReadAllText,ReadAllLines
.NET/テキストファイルの読込・StreamReader
.NET/テンポラリファイルの作成・ランダムな文字列の作成を作成する
.NET/テンポラリファイル名を取得する・GetRandomFileName
.NET/ディレクトリの有無を確認する
.NET/ネットワークカードの各種情報を取得するサンプルコード
.NET/バイト配列にファイルの内容をすべて読み込む
.NET/バイナリーファイルの作成・リード・ライト
.NET/ファイルなの?ディレクトリなの?の判別
.NET/ファイルの有無を確認する
.NET/ファイル一覧を取得する・GetFiles,EnumerateFiles
.NET/プログラムに渡された引数を取得する方法
.NET/ユーザーが無操作の状態を取得する・GetLastInputInfo
.NET/三項演算子のサンプルコード
.NET/四捨五入をするときはMidpointRounding.AwayFromZeroにすること
.NET/指定した時間間隔でイベントを発行する・Timer
.NET/数値を指定した桁数分ゼロで埋めたい・ToString
.NET/文字列(String)を左右逆転し文字列(String)で返却する方法
.NET/文字列をバイト配列に変換・バイト配列を文字列に変換
.NET/文字列を区切り文字で分割する方法・Split
.NET/文字列宣言の先頭の@について
.NET/文字列数値を指定した桁数分ゼロで埋めたい・PadLeft
.NET/文字列日付をDateTimeに変換する
.NET/文字列配列orList配列に指定した文字列が存在するかを確認する方法
.NET/時間(日数+時間)が格納できるTimeSpan
.NET/月末の日を取得する方法・DaysInMonth
.NET/現在の日時を取得する
.NET/符号付バイトsbyte,符号なしbyteをintegerに変換する
.NET/管理者として実行されているかどうか確認するサンプルコード
.NET/連想配列(ハッシュ)のキーと値を取得する
.NET/連想配列(ハッシュ)を使ってみる・Dictionary
.NET/閏年かを調べる方法
AutoTicketLinkName
FrontPage
InterWikiName
MenuBar
OSS
OSS/XYM日本円価格(シンボル日本円価格 (XYMJPYPrice)
OSS/ビットコイン日本円価格(ビットコイン日本円価格 (BitcoinJPYPrice)
RecentDeleted
VS
VS/Debug.Writeをイミディエイトウィンドウに出力する方法
VS/Visual Studio 2022に Spy++をインストールする手順
VS/VS2022の配色テーマの変更操作
VS/XAML編集に使うツールボックスの再表示する操作手順
VS/インデントなどコードを整形するショートカットの紹介
VS/コメントにするショートカットキー
VS/ショートカットキーで大文字・小文字に変換する
VS/ビルド中に中断したい場合の操作手順
WPF
WPF/DataGridを使ってみる
WPF/起動してもMainWindowを表示したくない場合
お約束
プライバシーポリシー
最初にお読みください
#navi(../) * ネットワークカードの各種情報を取得するサンプルコード [#l92bb5e5] ネットワークアダプタ数、名称、詳細、スピード、ループバックであるかどうか、ネットワークアダプタがアップしているか~ IPアドレス、マルチキャストアドレス、マスク、DHCPかどうか、DNSサーバ、ゲートウェイ情報を取得する~ サンプルコードを以下に公開します。 #contents * 動作確認環境 [#e3e8a703] -Windows 10 ver.21H2 -Visual Studio 2022 -.NET Framework 4.7.2 -コンソールアプリケーション * ネットワークアダプタの情報取得のサンプルコード [#q28859d3] 以下に C#, Visual Basic(VB) によるサンプルコードを記します。 ** C#によるネットワークアダプタ情報取得サンプルコード [#cfad1090] using System; using System.Net; using System.Net.NetworkInformation; namespace NetIF { internal class Program { static void Main(string[] args) { NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces(); Console.WriteLine("Number of adapters: {0}\n", adapters.Length); foreach (NetworkInterface adapter in adapters) { Console.WriteLine("Name: {0}\n\tDescription: {1}\n\tSpeed: {2}" , adapter.Name, adapter.Description, adapter.Speed); Console.WriteLine("\tloopback?: {0}" , adapter.NetworkInterfaceType == NetworkInterfaceType.Loopback ? "yes" : "no"); Console.WriteLine("\tifup?: {0}" , adapter.OperationalStatus == OperationalStatus.Up ? "yes" : "no"); if (adapter.OperationalStatus == OperationalStatus.Up) { IPInterfaceProperties adapterProperties = adapter.GetIPProperties(); // dns IPAddressCollection dns = adapterProperties.DnsAddresses; if (dns != null) { foreach (IPAddress ip in dns) { Console.WriteLine("\t\tDNS: {0}", ip.ToString()); } } // anycast IPAddressInformationCollection anycast = adapterProperties.AnycastAddresses; if (anycast != null) { foreach (IPAddressInformation any in anycast) { Console.WriteLine("\t\tAnycast: {0}", any.Address.ToString()); } } // multicast MulticastIPAddressInformationCollection multicast = adapterProperties.MulticastAddresses; if (multicast != null) { foreach (MulticastIPAddressInformation multi in multicast) { Console.WriteLine("\t\tMulticast: {0}", multi.Address.ToString()); } } // unicast UnicastIPAddressInformationCollection unicast = adapterProperties.UnicastAddresses; if (unicast != null) { foreach (UnicastIPAddressInformation uni in unicast) { Console.WriteLine("\t\tUnicast Address: {0}", uni.Address.ToString()); Console.WriteLine("\t\tUnicast IPv4Mask: {0}", uni.IPv4Mask.ToString()); Console.WriteLine("\t\tUnicast PrefixOrigin: {0}", uni.PrefixOrigin.ToString()); Console.WriteLine("\t\tUnicast SuffixOrigin: {0}", uni.SuffixOrigin.ToString()); Console.WriteLine("\t\tDHCP?: {0}", uni.PrefixOrigin == PrefixOrigin.Dhcp ? "yes" : "no"); } } // default gateway GatewayIPAddressInformationCollection gateways = adapterProperties.GatewayAddresses; if (gateways != null) { foreach (GatewayIPAddressInformation gateway in gateways) { Console.WriteLine("\t\tGateway Address: {0}", gateway.Address.ToString()); } } } } } } } ** Visual Basicによるネットワークアダプタ情報取得サンプルコード [#u6068207] Imports System.Net Imports System.Net.NetworkInformation Module Module1 Sub Main() Dim adapters As NetworkInterface() = NetworkInterface.GetAllNetworkInterfaces() Console.WriteLine("Number of adapters: {0}" & vbLf, adapters.Length) For Each adapter As NetworkInterface In adapters Console.WriteLine("Name: {0}" & vbLf & vbTab & "Description: {1}" & vbLf & vbTab & "Speed: {2}", adapter.Name, adapter.Description, adapter.Speed) Console.WriteLine(vbTab & "loopback?: {0}", If(adapter.NetworkInterfaceType = NetworkInterfaceType.Loopback, "yes", "no")) Console.WriteLine(vbTab & "ifup?: {0}", If(adapter.OperationalStatus = OperationalStatus.Up, "yes", "no")) If adapter.OperationalStatus = OperationalStatus.Up Then Dim adapterProperties As IPInterfaceProperties = adapter.GetIPProperties() Dim dns As IPAddressCollection = adapterProperties.DnsAddresses If dns IsNot Nothing Then For Each ip As IPAddress In dns Console.WriteLine(vbTab & vbTab & "DNS: {0}", ip.ToString()) Next End If Dim anycast As IPAddressInformationCollection = adapterProperties.AnycastAddresses If anycast IsNot Nothing Then For Each any As IPAddressInformation In anycast Console.WriteLine(vbTab & vbTab & "Anycast: {0}", any.Address.ToString()) Next End If Dim multicast As MulticastIPAddressInformationCollection = adapterProperties.MulticastAddresses If multicast IsNot Nothing Then For Each multi As MulticastIPAddressInformation In multicast Console.WriteLine(vbTab & vbTab & "Multicast: {0}", multi.Address.ToString()) Next End If Dim unicast As UnicastIPAddressInformationCollection = adapterProperties.UnicastAddresses If unicast IsNot Nothing Then For Each uni As UnicastIPAddressInformation In unicast Console.WriteLine(vbTab & vbTab & "Unicast Address: {0}", uni.Address.ToString()) Console.WriteLine(vbTab & vbTab & "Unicast IPv4Mask: {0}", uni.IPv4Mask.ToString()) Console.WriteLine(vbTab & vbTab & "Unicast PrefixOrigin: {0}", uni.PrefixOrigin.ToString()) Console.WriteLine(vbTab & vbTab & "Unicast SuffixOrigin: {0}", uni.SuffixOrigin.ToString()) Console.WriteLine(vbTab & vbTab & "DHCP?: {0}", If(uni.PrefixOrigin = PrefixOrigin.Dhcp, "yes", "no")) Next End If Dim gateways As GatewayIPAddressInformationCollection = adapterProperties.GatewayAddresses If gateways IsNot Nothing Then For Each gateway As GatewayIPAddressInformation In gateways Console.WriteLine(vbTab & vbTab & "Gateway Address: {0}", gateway.Address.ToString()) Next End If End If Next End Sub End Module 以上、C#, Visual Basic をつかったネットワークアダプタの情報取得サンプルコードでした。
タイムスタンプを変更しない
#navi(../) * ネットワークカードの各種情報を取得するサンプルコード [#l92bb5e5] ネットワークアダプタ数、名称、詳細、スピード、ループバックであるかどうか、ネットワークアダプタがアップしているか~ IPアドレス、マルチキャストアドレス、マスク、DHCPかどうか、DNSサーバ、ゲートウェイ情報を取得する~ サンプルコードを以下に公開します。 #contents * 動作確認環境 [#e3e8a703] -Windows 10 ver.21H2 -Visual Studio 2022 -.NET Framework 4.7.2 -コンソールアプリケーション * ネットワークアダプタの情報取得のサンプルコード [#q28859d3] 以下に C#, Visual Basic(VB) によるサンプルコードを記します。 ** C#によるネットワークアダプタ情報取得サンプルコード [#cfad1090] using System; using System.Net; using System.Net.NetworkInformation; namespace NetIF { internal class Program { static void Main(string[] args) { NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces(); Console.WriteLine("Number of adapters: {0}\n", adapters.Length); foreach (NetworkInterface adapter in adapters) { Console.WriteLine("Name: {0}\n\tDescription: {1}\n\tSpeed: {2}" , adapter.Name, adapter.Description, adapter.Speed); Console.WriteLine("\tloopback?: {0}" , adapter.NetworkInterfaceType == NetworkInterfaceType.Loopback ? "yes" : "no"); Console.WriteLine("\tifup?: {0}" , adapter.OperationalStatus == OperationalStatus.Up ? "yes" : "no"); if (adapter.OperationalStatus == OperationalStatus.Up) { IPInterfaceProperties adapterProperties = adapter.GetIPProperties(); // dns IPAddressCollection dns = adapterProperties.DnsAddresses; if (dns != null) { foreach (IPAddress ip in dns) { Console.WriteLine("\t\tDNS: {0}", ip.ToString()); } } // anycast IPAddressInformationCollection anycast = adapterProperties.AnycastAddresses; if (anycast != null) { foreach (IPAddressInformation any in anycast) { Console.WriteLine("\t\tAnycast: {0}", any.Address.ToString()); } } // multicast MulticastIPAddressInformationCollection multicast = adapterProperties.MulticastAddresses; if (multicast != null) { foreach (MulticastIPAddressInformation multi in multicast) { Console.WriteLine("\t\tMulticast: {0}", multi.Address.ToString()); } } // unicast UnicastIPAddressInformationCollection unicast = adapterProperties.UnicastAddresses; if (unicast != null) { foreach (UnicastIPAddressInformation uni in unicast) { Console.WriteLine("\t\tUnicast Address: {0}", uni.Address.ToString()); Console.WriteLine("\t\tUnicast IPv4Mask: {0}", uni.IPv4Mask.ToString()); Console.WriteLine("\t\tUnicast PrefixOrigin: {0}", uni.PrefixOrigin.ToString()); Console.WriteLine("\t\tUnicast SuffixOrigin: {0}", uni.SuffixOrigin.ToString()); Console.WriteLine("\t\tDHCP?: {0}", uni.PrefixOrigin == PrefixOrigin.Dhcp ? "yes" : "no"); } } // default gateway GatewayIPAddressInformationCollection gateways = adapterProperties.GatewayAddresses; if (gateways != null) { foreach (GatewayIPAddressInformation gateway in gateways) { Console.WriteLine("\t\tGateway Address: {0}", gateway.Address.ToString()); } } } } } } } ** Visual Basicによるネットワークアダプタ情報取得サンプルコード [#u6068207] Imports System.Net Imports System.Net.NetworkInformation Module Module1 Sub Main() Dim adapters As NetworkInterface() = NetworkInterface.GetAllNetworkInterfaces() Console.WriteLine("Number of adapters: {0}" & vbLf, adapters.Length) For Each adapter As NetworkInterface In adapters Console.WriteLine("Name: {0}" & vbLf & vbTab & "Description: {1}" & vbLf & vbTab & "Speed: {2}", adapter.Name, adapter.Description, adapter.Speed) Console.WriteLine(vbTab & "loopback?: {0}", If(adapter.NetworkInterfaceType = NetworkInterfaceType.Loopback, "yes", "no")) Console.WriteLine(vbTab & "ifup?: {0}", If(adapter.OperationalStatus = OperationalStatus.Up, "yes", "no")) If adapter.OperationalStatus = OperationalStatus.Up Then Dim adapterProperties As IPInterfaceProperties = adapter.GetIPProperties() Dim dns As IPAddressCollection = adapterProperties.DnsAddresses If dns IsNot Nothing Then For Each ip As IPAddress In dns Console.WriteLine(vbTab & vbTab & "DNS: {0}", ip.ToString()) Next End If Dim anycast As IPAddressInformationCollection = adapterProperties.AnycastAddresses If anycast IsNot Nothing Then For Each any As IPAddressInformation In anycast Console.WriteLine(vbTab & vbTab & "Anycast: {0}", any.Address.ToString()) Next End If Dim multicast As MulticastIPAddressInformationCollection = adapterProperties.MulticastAddresses If multicast IsNot Nothing Then For Each multi As MulticastIPAddressInformation In multicast Console.WriteLine(vbTab & vbTab & "Multicast: {0}", multi.Address.ToString()) Next End If Dim unicast As UnicastIPAddressInformationCollection = adapterProperties.UnicastAddresses If unicast IsNot Nothing Then For Each uni As UnicastIPAddressInformation In unicast Console.WriteLine(vbTab & vbTab & "Unicast Address: {0}", uni.Address.ToString()) Console.WriteLine(vbTab & vbTab & "Unicast IPv4Mask: {0}", uni.IPv4Mask.ToString()) Console.WriteLine(vbTab & vbTab & "Unicast PrefixOrigin: {0}", uni.PrefixOrigin.ToString()) Console.WriteLine(vbTab & vbTab & "Unicast SuffixOrigin: {0}", uni.SuffixOrigin.ToString()) Console.WriteLine(vbTab & vbTab & "DHCP?: {0}", If(uni.PrefixOrigin = PrefixOrigin.Dhcp, "yes", "no")) Next End If Dim gateways As GatewayIPAddressInformationCollection = adapterProperties.GatewayAddresses If gateways IsNot Nothing Then For Each gateway As GatewayIPAddressInformation In gateways Console.WriteLine(vbTab & vbTab & "Gateway Address: {0}", gateway.Address.ToString()) Next End If End If Next End Sub End Module 以上、C#, Visual Basic をつかったネットワークアダプタの情報取得サンプルコードでした。
テキスト整形のルールを表示する