0

我们有一个用 VB6 编写的调制解调器终端应用程序。它非常适合我们需要它做的事情,但是在拨打特定提供商时需要启动 VPN 连接。我查看了一些相关的帖子,看起来这可能使用 RAS API 是可能的。任何人都可以建议在 MSDN 之外使用此 API 的资源/建议吗?

困难 - .NET 不是一个选项。

4

4 回答 4

1

.Net 完全不是一种选择,还是不能将您拥有的所有东西切换到 .Net 中?您可以创建一个 .Net 类库并启用 COM+,然后在现有的 VB6 应用程序中使用该库。

如果这也不是一种选择,我们深表歉意。

于 2009-01-10T02:52:43.873 回答
1

在更糟糕的情况下,您只能找到 .NET 示例,我会使用 .NET Reflector 来查看 .NET 框架正在调用哪些 API 以及它正在传递哪些参数。我在 VB6 中尝试使用 GDI+ 时这样做了。一种算法在 .NET 中运行良好,但当我在 VB6 中使用直接 API 时却失败了。使用反射器,我发现我搞砸了参数,然后它开始工作。

于 2009-01-12T19:03:01.433 回答
1

这可能不像您需要的那么强大,但我过去曾在需要设置 VPN 连接的简单情况下调用系统 rasdial 命令。

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

        rasdial [entryname] /DISCONNECT

        rasdial

不是工业实力,但很适合在脚本等中使用。

于 2009-01-12T19:12:38.683 回答
0

如果您可以处理互操作并了解将 C# 转换为 VB6,那么我的开源项目中几乎所有的 RAS API 都已完成。您可以将所需的零碎部分取出并放入您的项目中。只需查看项目上的源代码选项卡,它就在下面。

http://dotras.codeplex.com

您感兴趣的组件是 RasDialer,请注意该组件在引擎盖下非常复杂。

于 2010-12-08T15:27:56.153 回答