5

我想获取所有RAS 连接(拨号、宽带、VPN 等),因为它们出现在“控制面板”下的“网络连接”中。这里和网络上有一些解决方案可以做到这一点,但它们都是关于获取Active (connected) Connections

我怎样才能做到这一点?如何获得所有活动和非活动RAS 连接?有或没有“DotRas”。

4

2 回答 2

5

DotRas SDK 中有一个组件可以处理电话簿条目的管理。请记住,Windows 使用了两个电话簿,一个在所有用户的配置文件中,一个在当前用户的配置文件中。因此,如果您试图获取您在那里看到的所有条目的列表,您需要访问两个电话簿。

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 的下载链接见官网:http ://dotras.codeplex.com

希望有帮助!

于 2012-05-28T16:29:28.330 回答
2

如果您想动态获取所有没有 .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);
}
于 2013-05-02T15:48:19.697 回答