0

我们需要从我们的 WPF 应用程序在客户端计算机的默认浏览器中打开一个网站 URL。一直以来,我们都在使用 simpleProcess.Start(URL)并且运行良好。到目前为止,其中一位客户在基本身份验证后拥有此“URL”。他们希望我们使用 URL 浏览的站点托管在 Apache Web 服务器上。据我所知,如果我们有https://username:password@domain.com它直接将我们带入站点而无需用户名/密码挑战,并且它在 Chrome 和 Firefox 中运行良好,但是出于安全原因,IE 上的较新版本停止支持它。

考虑到以下目标,有人可以提出一些替代方法来实现相同的目标吗?

  1. 项目清单
  2. 通过输入用户名密码浏览到 URL。
  3. 在客户端的桌面计算机中打开默认浏览器。
  4. 不想用户浏览器控制
  5. 至少应该在 3 个浏览器中工作 - IE、Firefox 和 Chrome
  6. 我们无法更改客户端桌面的机器,因此解决方案不需要任何特殊设置。
4

1 回答 1

0

来自 Microsoft 支持站点的开发人员解决方法:http: //support.microsoft.com/kb/834489

应用程序和网站开发人员的解决方法

由调用 WinInet 或 Urlmon 函数的对象打开的 URL

对于在调用 WinInet 或 Urlmon 函数(如 InternetOpenURL)时使用包含用户信息的 HTTP 或 HTTPS URL 的对象,请重写该对象以使用以下方法之一将用户信息发送到网站:使用 InternetSetOption 函数和包括以下选项标志: INTERNET_OPTION_USERNAME INTERNET_OPTION_PASSWORD 注意对于这些标志,InternetSetOption 选项必须具有由 InternetConnect 函数返回的句柄。因此,如果应用程序使用 InternetOpenUrl 函数,请将应用程序修改为使用 InternetConnect、HttpOpenRequest 和 HttpSendRequest WinInet 函数。有关如何使用这些功能的详细信息,请访问以下 Microsoft 网站: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 网站:http: //msdn2.microsoft.com/en-us/library/ms775080.aspx

是否尝试过此选项?

于 2012-11-15T16:21:39.347 回答