Winapi 利用VB6和rasapi实现VPN连接的可行性

Winapi 利用VB6和rasapi实现VPN连接的可行性,winapi,vb6,connectivity,Winapi,Vb6,Connectivity,我们有一个用VB6编写的调制解调器终端应用程序。它对于我们需要它做的事情非常有用,但在拨打特定提供商的电话时,需要启动VPN连接。我看过一些相关的帖子,看起来使用RASAPI是可能的。除了MSDN之外,有人能为使用此API提供资源/建议吗 困难-.NET不是一个选项 是.Net完全不是一个选项,还是说它不是一个将所有内容都切换到.Net的选项?您可以创建.Net类库并启用COM+,然后在现有VB6应用程序中使用该库 如果这也不是一个选项,请道歉。是否.Net完全不是一个选项,或者它不是一个将所有

我们有一个用VB6编写的调制解调器终端应用程序。它对于我们需要它做的事情非常有用,但在拨打特定提供商的电话时,需要启动VPN连接。我看过一些相关的帖子,看起来使用RASAPI是可能的。除了MSDN之外,有人能为使用此API提供资源/建议吗


困难-.NET不是一个选项

是.Net完全不是一个选项,还是说它不是一个将所有内容都切换到.Net的选项?您可以创建.Net类库并启用COM+,然后在现有VB6应用程序中使用该库


如果这也不是一个选项,请道歉。

是否.Net完全不是一个选项,或者它不是一个将所有内容切换到.Net的选项?您可以创建.Net类库并启用COM+,然后在现有VB6应用程序中使用该库


如果这不是一个选项,我深表歉意。

在更糟糕的情况下,如果您只找到.NET示例,我将使用.NET Reflector查看.NET framework正在调用哪些API以及它正在传递哪些参数。当我试图在VB6中使用GDI+时,我就这样做了。一个算法在.NET中运行得很好,但当我在VB6中使用DirectAPI时失败了。使用reflector我找到了我弄乱的参数,然后它开始工作。

在更糟糕的情况下,如果您只找到.NET示例,我将使用.NET reflector查看.NET framework正在调用哪些API以及它正在传递哪些参数。当我试图在VB6中使用GDI+时,我就这样做了。一个算法在.NET中运行得很好,但当我在VB6中使用DirectAPI时失败了。使用reflector,我找到了我弄乱的参数,然后它开始工作。

这可能没有您需要的那么可靠,但我过去曾调用system Rasdail命令,用于我需要设置VPN连接的简单情况

USAGE:
        rasdial entryname [username [password|*]] [/DOMAIN:domain]
                [/PHONE:phonenumber] [/CALLBACK:callbacknumber]
                [/PHONEBOOK:phonebookfile] [/PREFIXSUFFIX]

        rasdial [entryname] /DISCONNECT

        rasdial

这可能没有您需要的那么强大,但是我在过去调用过system Rasdail命令,用于我需要设置VPN连接的简单情况

USAGE:
        rasdial entryname [username [password|*]] [/DOMAIN:domain]
                [/PHONE:phonenumber] [/CALLBACK:callbacknumber]
                [/PHONEBOOK:phonebookfile] [/PREFIXSUFFIX]

        rasdial [entryname] /DISCONNECT

        rasdial

没有工业实力,但很适合在脚本中使用。

如果您能够处理互操作并理解如何将C#转换为VB6,我的开源项目中几乎已经完成了所有RAS API。你可以把你需要的一点点都拿出来,放到你的项目中。只要查看项目的“源代码”选项卡,就可以了


您可能会感兴趣的组件是RasDialer,请注意,该组件非常复杂。

如果您能够处理互操作并理解如何将C#转换为VB6,我已经在我的开源项目中完成了几乎所有的RAS API。你可以把你需要的一点点都拿出来,放到你的项目中。只要查看项目的“源代码”选项卡,就可以了


您可能会感兴趣的组件是RasDialer,请注意,该组件非常复杂。

建议不错,但根本没有.NET。建议不错,但根本没有.NET。我确信某个地方有人使用COM/ActiveX包装了此API。根据你的支付意愿/能力,你可以在这条路线上获得更多的控制权。否则,我认为您可能无法从VB创建自己的包装器。:)我确信某个地方有人使用COM/ActiveX包装了这个API。根据你的支付意愿/能力,你可以在这条路线上获得更多的控制权。否则,我认为您可能无法从VB创建自己的包装器。:)