WinHttpQueryHeader()関数を使用して、応答がプロキシまたはエンドサーバーから送信されたかどうかを調べる方法は? 関数WINHTTP_QUERY_PROXY_AUTHENTICATEのパラメーターとして使用しようとしましたが、取得したバッファーは NULL です。dwInfoLevelwinHttpQueryHeader()
int bufferSize = 0;
char lpOutBuffer[500];
ReturnVal = WinHttpQueryHeader(Handle, WINHTTP_QUERY_PROXY_AUTHENTICATE, NULL, &bufferSize);
ReturnVal= WinHttpQueryHeader(Handle, WINHTTP_QUERY_PROXY_AUTHENTICATE, lpOutBuffer, &bufferSize);
lpOutBuffer無効です。
実際、ここでの問題はbufferSize、最初に 0を取得したWinHttpQueryHeaderため、2 番目が( 0 であるため)WinHttpQueryHeaderを満たさないことです。が0 として返されるのはなぜですか?lpOutBufferbufferSizebufferSize
これに反して、InfoLevelasを使用するとWINHTTP_QUERY_RAW_HEADERS_CRLF、正しい出力がbufferSize得られ、0 ではありません。最初のWinHttpQueryHeader()呼び出しの後に入力されます。