Получите WinHTTP для использования учетных данных из WinInet

Я пишу сервис, следовательно, использую WinHTTP вместо WinInet. При чтении MSDN говорится о настройке WINHTTP_OPTION_USE_GLOBAL_SERVER_CREDENTIALS (http://msdn.microsoft.com/en-us/library/windows/desktop/aa384066(v=vs.85).aspx) чтобы WinHTTP получил учетные данные, передаваемые из WinInet.

Сейчас я тестирую свой сервис и запускаю его в пользовательском контексте и пытаюсь сделать так, чтобы он проходил аутентификацию на прокси-сервере с использованием базовой аутентификации. Поскольку у меня нет предварительных знаний о пользовательских учетных данных, я хочу, чтобы они передавались из WinInet. я звоню WinHttpSetCredentials с NULL Значения для пользователя и пароля и не имеют успеха.

bResults = WinHttpSetCredentials( hRequest,
dwTarget,
dwSelectedScheme,
NULL,
NULL,
NULL );

Я также устанавливаю раздел реестра
HKLM \ Software \ Microsoft \ Windows \ CurrentVersion \ Internet Settings \ ShareCredsWithWinHttp со значением DWORD 1

и звонит

BOOL bSetValue = TRUE;
if(!WinHttpSetOption(hSession,WINHTTP_OPTION_USE_GLOBAL_SERVER_CREDENTIALS,
&bSetValue,sizeof(bSetValue))){

printf("Setting options failed\n");
}else{
printf("Settings options success\n");
}

Код выше, кажется, возвращается просто отлично.

Я не могу найти много примеров WinHttp с использованием паролей по умолчанию или получения их из WinInet. У кого-нибудь есть опыт с этим или где-то они могут указать мне? Благодарю.

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector