System.Net.WebClient - как лучше всего получить (не по умолчанию) учетные данные прокси?
Я пишу установщик (WiX Burn), который должен получить информацию о лицензии с нашего сервера ASP.NET. Мы используем System.Net.WebClient, чтобы сделать этот запрос.
Некоторые из наших клиентов используют прокси-серверы аутентификации, которые возвращают 407 ответов нашему установщику.
Я первоначально попытался передать учетные данные по умолчанию согласно этому сообщению. Однако на моем компьютере и с настроенным тестовым прокси-сервером у меня возникает та же проблема, что и в этом посте, где мои учетные данные по умолчанию просто не собираются по какой-то причине.
В любом случае, я предполагаю, что будут случаи, когда учетные данные прокси-сервера отличаются от учетных данных Windows по умолчанию, и пользователь должен будет предоставить свои учетные данные прокси-сервера вручную.
Я видел несколько разных вариантов в Windows для этого:
- Использовать
CredUIPromptForCredentials
диалог, который Visual Studio, кажется, использует. - Используйте более современную версию
CredUIPromptForWindowsCredentials
диалог - Использовать
InternetErrorDlg
диалог - Забудьте об использовании диалогов Windows и просто разберитесь с этим в интерфейсе установщика.
Каков наилучший способ сделать это? Это имеет значение?
Бонусные баллы за помощь в том, что мои учетные данные Windows по умолчанию не были получены WebClient
!