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

时间:2010-08-21 20:51:40

标签: c# vpn internet-connection controlpanel

  

可能重复:
  Programmatically changing Control Panel network options to connect to VPN

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

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

http://hidemyass.com/vpn/

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

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

  1. 创建临时新连接以通过VPN连接到互联网
  2. 当用户按下“连接”时切换到该连接
  3. 当用户按下“断开连接”时,切换回其主连接
  4. 销毁与VPN的临时连接
  5. 如果有人知道这是怎么做的并且可能引导我朝着正确的方向前进,我会非常感激。此外,我更喜欢在C#中这样做,但其他语言参考也会有所帮助。感谢。

1 个答案:

答案 0 :(得分:1)

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

System.Diagnostics.Process.Start("rasdial.exe", "My_VPN My_Username My_Password"); 

我已经好好浏览了一下,无法看到以编程方式实际创建VPN的方法 - 不是说它不可能,但它看起来并不简单。我手动创建VPN,然后通过调用rasdial连接和断开连接。

你可以使用相同的Proces.Start方法来调用rasphone,这可以用来让用户通过设置VPN ...(rasphone -a)