以编程方式更改控制面板网络选项以连接到VPN

Kra*_*atz 5 c# vpn controlpanel internet-connection

可能重复:以
编程方式更改控制面板网络选项以连接到VPN

我向我的用户提供VPN服务,他们中的很多人抱怨说,每次想要连接到我的VPN时,设置新的VPN连接并切换到它都很麻烦.

在做了一些研究后,我发现有一些方法可以以编程方式执行此操作,例如:

http://hidemyass.com/vpn/

此服务提供一个程序,使用用户名或密码连接到其VPN服务.我自己可以做大部分这些事情,但我真正需要帮助的是他们如何通过程序连接到VPN,以及他们如何以编程方式进行操作.

我理想情况下需要做的是在下面的列表中:

  1. 创建临时新连接以通过VPN连接到Internet
  2. 当用户按下"连接"时切换到该连接
  3. 当用户按下"断开连接"时,切换回其主连接
  4. 销毁与VPN的临时连接

如果有人知道如何做到这一点并且可能引导我朝着正确的方向前进,我将非常感激.此外,我更喜欢在C#中这样做,但其他语言参考也会有所帮助.谢谢.

小智 1

如果 VPN 连接已经存在,您可以使用各种参数调用 rasdial.exe...

System.Diagnostics.Process.Start("rasdial.exe", "My_VPN My_Username My_Password"); 
Run Code Online (Sandbox Code Playgroud)

我仔细查看了周围,但找不到以编程方式实际创建 VPN 的方法 - 并不是说​​这是不可能的,但它看起来并不微不足道。我会手动创建 VPN,然后通过调用 rasdial 进行连接和断开连接。

您可以使用相同的 Proces.Start 方法来调用 rasphone,该方法可用于引导用户设置 VPN... (rasphone -a)