0

VB6 で書かれたモデム端末アプリケーションがあります。これは必要なことにはうまく機能しますが、特定のプロバイダーにダイヤルするときに VPN 接続を開始するという新しい要件があります。関連する投稿をいくつか見てきましたが、これは RAS API を使用して可能であると思われます。MSDN 以外でこの API を使用するためのリソースやアドバイスを提案できる人はいますか?

難点 - .NET はオプションではありません。

4

4 に答える 4

1

.NETの例しか見つからない場合は、.NET Reflectorを使用して、.NET Frameworkが呼び出しているAPIと、渡されているパラメーターを確認します。これは、VB6でGDI+を使用しようとしたときに行いました。アルゴリズムは.NETでうまく機能しましたが、VB6で直接APIを使用するとうまくいきませんでした。リフレクターを使用して、私が台無しにしていたパラメーターを見つけ、それが機能し始めました。

于 2009-01-12T19:03:01.433 に答える
1

これは必要なほど堅牢ではないかもしれませんが、VPN接続をセットアップする必要がある単純な状況については、過去にsystemrasdialコマンドを呼び出しました。

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

        rasdial [entryname] /DISCONNECT

        rasdial

工業的な強みではありませんが、スクリプトなどで使用するのに適しています。

于 2009-01-12T19:12:38.683 に答える
1

.Net は完全にオプションではありませんか、それとも、持っているすべてのものを .Net に切り替えるオプションではありませんか? .Net クラス ライブラリを作成して COM+ を有効にし、そのライブラリを既存の VB6 アプリケーションで使用できます。

これもオプションではない場合はお詫び申し上げます。

于 2009-01-10T02:52:43.873 に答える
0

相互運用性を処理し、C#からVB6への変換を理解できれば、オープンソースプロジェクトでほとんどすべてのRASAPIを完了できます。必要な部分を取り出して、プロジェクトに入れることができます。プロジェクトのソースコードタブをチェックしてください。すべてそこにあります。

http://dotras.codeplex.com

興味のあるコンポーネントはRasDialerですが、コンポーネントは内部ではかなり複雑であることに注意してください。

于 2010-12-08T15:27:56.153 に答える