0

WPFアプリケーションからクライアントマシンのデフォルトのブラウザーでWebサイトのURLを開く必要があります。この間ずっとシンプルなものを使ってProcess.Start(URL)いて、うまく機能していました。これまで、顧客の1人が基本認証の背後にこの「URL」を持っているところ。URLを使用して閲覧してほしいサイトは、ApacheWebサーバーでホストされています。私の知るhttps://username:password@domain.com限り、ユーザー名/パスワードのチャレンジなしで直接サイトにアクセスでき、ChromeとFirefoxで正常に動作しますが、セキュリティ上の理由から、IEの新しいバージョンではサポートが停止されています。

誰かが次の目的を考慮して同じことを達成するためのいくつかの代替アプローチを提案できますか?

  1. リストアイテム
  2. ユーザー名パスワードを渡してURLを参照します。
  3. クライアントのデスクトップマシンでデフォルトのブラウザを開きます。
  4. ブラウザ制御を使用したくない
  5. 少なくとも、IE、Firefox、Chromeの3つのブラウザで動作するはずです
  6. クライアントデスクトップのマシンに変更を加えることはできないため、ソリューションに特別な設定は必要ありません。
4

1 に答える 1

0

Microsoft サポート サイトの開発者向けの回避策: http://support.microsoft.com/kb/834489

アプリケーションおよび Web サイトの開発者向けの回避策

WinInet または Urlmon 関数を呼び出すオブジェクトによって開かれる URL

InternetOpenURL などの WinInet または Urlmon 関数を呼び出すときに、ユーザー情報を含む HTTP または HTTPS URL を使用するオブジェクトの場合、次のいずれかの方法を使用してユーザー情報を Web サイトに送信するようにオブジェクトを書き換えます。 InternetSetOption 関数を使用し、次のオプション フラグを含めます。 INTERNET_OPTION_USERNAME INTERNET_OPTION_PASSWORD 注 これらのフラグの場合、InternetSetOption オプションには、InternetConnect 関数によって返されるハンドルが必要です。したがって、アプリケーションが InternetOpenUrl 関数を使用する場合は、InternetConnect、HttpOpenRequest、および HttpSendRequest WinInet 関数を使用するようにアプリケーションを変更します。これらの関数の使用方法の詳細については、次の Microsoft Web サイトを参照してください: http://msdn2.microsoft.com/en-us/library/Aa384363

http://msdn2.microsoft.com/en-us/library/Aa384233

http://msdn2.microsoft.com/en-us/library/aa384247.aspx IAuthenticate インターフェイスを使用します。IAuthenticate インターフェイスの使用方法の詳細については、次の Microsoft Web サイトを参照してください: http://msdn2.microsoft.com/en-us/library/ms775080.aspx

このオプションは試されましたか?

于 2012-11-15T16:21:39.347 に答える