我正在编写一个(WiX Burn)安装程序,它需要从我们的 ASP.NET 服务器获取许可证信息。我们正在使用 System.Net.WebClient 发出此请求。
我们的一些客户正在使用身份验证代理,它会向我们的安装程序返回 407 响应。
我最初尝试按照这篇文章传递默认凭据。但是,在我的机器上和我设置的测试代理上,我遇到了与这篇文章中相同的问题,因为某种原因我的默认凭据根本没有被提取。
无论如何,我想在某些情况下,代理凭据与默认的 Windows 凭据不同,用户将需要手动提供他们的代理凭据。
为此,我在 Windows 中看到了许多不同的选项:
CredUIPromptForCredentials
使用Visual Studio 似乎使用的对话框。- 使用更现代的版本
CredUIPromptForWindowsCredentials
对话框。 - 使用
InternetErrorDlg
对话框 - 忘记使用 Windows 对话框,只需在安装程序 UI 中处理它。
这样做的最佳方法是什么?有关系吗?
奖励积分用于帮助解决我的默认 Windows 凭据没有被WebClient
!