「コントロールパネル」の下の「ネットワーク接続」に表示されるすべてのRAS接続(ダイヤルアップ、ブロードバンド、VPNなど)を取得したい。これを行うためのいくつかの解決策がこことWeb上にありますが、それらはすべてアクティブな(接続された)接続を取得することに関するものです。
これどうやってするの?すべてのアクティブおよび非アクティブなRAS接続を取得するにはどうすればよいですか?「DotRas」の有無にかかわらず。
電話帳エントリの管理を処理するDotRasSDKの一部としてコンポーネントがあります。Windowsで使用されている電話帳は2つあり、1つはすべてのユーザーのプロファイルにあり、もう1つは現在のユーザーのプロファイルにあることに注意してください。したがって、そこに表示されるすべてのエントリのリストを取得しようとしている場合は、両方の電話帳にアクセスする必要があります。
using DotRas;
RasPhoneBook pbk = new RasPhoneBook();
pbk.Open(@"C:\PathToYourPhoneBook.pbk");
// NOTE: You can also use RasPhoneBook.GetPhoneBookPath(RasPhoneBookType.AllUsers) to
// access the path as defined by the Windows SDK rather than having to hard-code it.
foreach (RasEntry entry in pbk.Entries)
{
// Do something useful.
}
上記の例はかなり制限されているため、より完全な例については、SDKに含まれている例を確認してください。
上記のSDKへのダウンロードリンクについては、次の公式Webサイトを参照してください。http://dotras.codeplex.com
お役に立てば幸いです。
.pbk ファイルの「パス」なしですべての RAS 接続を動的に取得する場合
using DotRas;
string path = RasPhoneBook.GetPhoneBookPath(RasPhoneBookType.AllUsers);
RasPhoneBook pbk = new RasPhoneBook();
pbk.Open(path);
foreach (RasEntry entry in pbk.Entries)
{
MessageBox.Show(entry.Name);
}