Windows XP上的WinHttpSendRequest和HTTPS

时间:2019-02-11 11:25:06

标签: c++ windows windows-xp winhttp

OS:Windows XP SP3。应用程序应通过 https 协议从网站下载图片。结果,WinHttpSendRequest返回错误-2146893018。这是代码段:

hRequest = WinHttpOpenRequest(hConnect, L"GET", Path, Protocol, 0, 0, WINHTTP_FLAG_SECURE);

    if(hRequest){
        bResults = WinHttpSendRequest(hRequest, WINHTTP_NO_ADDITIONAL_HEADERS, 0,
                                      WINHTTP_NO_REQUEST_DATA, 0, 0, 0);
    ...
    }

此问题仅在WinXP上。在Windows 7上-一切正常。

但是,如果尝试通过 http 协议从另一个网站下载另一个图像(将WINHTTP_FLAG_SECURE替换为0),则一切正常。 怎么了?

1 个答案:

答案 0 :(得分:0)

服务器可能正在使用TLS 1.2 256位加密。尝试安装KB968730和KB3055973更新,但它们仅添加了对TLS 1.2的部分支持。

Windows XP已死,这是事实。现在,它不是与Internet兼容的操作系统。