В настоящее время вы работаете в автономном режиме; ожидается повторное подключение к Интернету

Как сделать с помощью WinInet запросы SSL

ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.

Эта статья на английском языке:168151
Заявление об отказе относительно содержимого статьи о продуктах, поддержка которых прекращена
Эта статья содержит сведения о продуктах, поддержка которых корпорацией Майкрософт прекращена. Поэтому она предлагается как есть и обновляться не будет.
Аннотация
В этой статье объясняется, как запросы SSL с помощью интерфейсов API WinInet.
Дополнительная информация
Имеется возможность установить Secure Socket Layer (SSL) или PrivateТехнология (PCT) HTTP сеансов связи с интерфейсами API WinInet. БезопасностьHTTP, отмечены как HTTPS://, происходит через TCP-порт 443. Код, аналогичныйДалее можно использовать для установления сеанса HTTPS:
   ...   hOpen = InternetOpen (...);   Connect = InternetConnect (                hOpen,                      // InternetOpen handle                "MyHttpServer",             // Server  name      INTERNET_DEFAULT_HTTPS_PORT,// Default HTTPS port - 443                "",                         // User name                "",                         //  User password                INTERNET_SERVICE_HTTP,      // Service      0,                          // Flags      0                           // Context                   );   hReq = HttpOpenRequest (                hConnect,                   // InternetConnect handle      "GET",                      // Method      "",                         // Object name      HTTP_VERSION,               // Version      "",                         // Referrer                NULL,                       // Extra headers      INTERNET_FLAG_SECURE,       // Flags      0                           // Context                );   ...				
Имейте в виду два различия при использовании HTTPS вместо HTTP:
  • InternetConnect использует INTERNET_DEFAULT_HTTPS_PORT вместо INTERNET_INVALID_PORT_NUMBER или INTERNET_DEFAULT_HTTP_PORT
  • HttpOpenRequest также использует параметр INTERNET_FLAG_SECURE все другие параметры.
Можно использовать следующие два параметра, HttpOpenRequest или вInternetOpenUrl ошибок:

  • INTERNET_FLAG_IGNORE_CERT_CN_INVALID - игнорирует ошибки, которые могут быть причиной по имени хоста сертификат сервера, не соответствующих имени узла в запрос.
  • INTERNET_FLAG_IGNORE_CERT_DATE_INVALID - игнорирует ошибки, которые могут быть вызвано просроченной серверный сертификат.
Обратитесь к документации по пакету SDK клиента Интернета для получения дополнительной информации наЭти флаги.

SSL и PCT функциональные возможности обеспечиваются Schannel.dll, который правильноустановлены при запуске программы распространения Wintdist.exe илиФайле Wint351.exe. увидеть Redist.txt или Axredist.txt для получения сведений оРаспространение Schannel.dll.
Ссылки
Справка SDK клиента Интернета

Внимание! Эта статья переведена автоматически

Свойства

Номер статьи: 168151 — последний просмотр: 06/03/2011 10:36:00 — редакция: 4.0

  • kbhowto kbmt KB168151 KbMtru
Отзывы и предложения