0

「ShellExecuteEx」を使用してCコードから「Rasphone.exe」を呼び出し、ダイヤルアップ接続を作成しました。WindowsXPとWindows7で異なる動作を見つけました。

Windows XPでの動作:RASDial接続はポップアップウィンドウなしで作成されます。

Windows 7での動作:ダイヤルアップウィンドウダイヤルするように求める番号がポップアップ表示されます。番号を入力せず、「ダイヤル」ボタンをクリックしました。接続が接続されます。以下は私がウィンドウズ7で得るスナップショットウィンドウですか?

ここに画像の説明を入力してください

行動の違いの理由は何ですか?

4

1 に答える 1

1

行動の違いの理由は何ですか?

Windows 7は、WindowsXPとは異なるオペレーティングシステムです。Metroが発明される前は、Windowsチームは何もすることがなかったので、誰かが気づいたかどうかを確認するために、古いコードの束を変更していました。彼らが変えたものの1つを見つけたようです。

でも心配はいりません。あなたが持っていたコードはそもそも運命づけられていました。ネットワーク接続をダイヤルする適切な方法は、ネットワークダイヤラアプリケーションを起動することではなく、この目的のために提供されているAPIを呼び出すことです。

必要なAPIの名前はWinINetであり、そのドキュメントはここにあります。特に、機能について説明している「インターネットへのダイヤルアップ接続の確立」セクションに関心がありInternetDialます

もちろん、彼らもこれを変更しました。Windows Vista以降、この関数はRASAPIを内部的に使用して接続を確立します。RasDialまたはRasDialDlg関数を直接呼び出して、仲介者をスキップします。

于 2012-08-02T07:19:17.407 に答える