Поделиться через


Класс CInternetSession

Создает и инициализирует один или несколько параллельных сеансов Интернета и, при необходимости, описывает подключение к прокси-серверу.

Синтаксис

class CInternetSession : public CObject

Участники

Открытые конструкторы

Имя Описание
CInternetSession::CInternetSession Формирует объект CInternetSession.

Открытые методы

Имя Описание
CInternetSession::Close Закрывает подключение к Интернету при завершении сеанса Интернета.
CInternetSession::EnableStatusCallback Устанавливает подпрограмму обратного вызова состояния.
CInternetSession::GetContext Закрывает подключение к Интернету при завершении сеанса Интернета.
CInternetSession::GetCookie Возвращает файлы cookie для указанного URL-адреса и всех его родительских URL-адресов.
CInternetSession::GetCookieLength Извлекает переменную, указывающую длину файла cookie, хранящегося в буфере.
CInternetSession::GetFtpConnection Открывает сеанс FTP с сервером. Записывается в систему пользователя.
CInternetSession::GetGopherConnection Открывает сервер gopher для приложения, пытающегося открыть подключение.
CInternetSession::GetHttpConnection Открывает HTTP-сервер для приложения, пытающегося открыть подключение.
CInternetSession::OnStatusCallback Обновляет состояние операции при включении обратного вызова состояния.
CInternetSession::OpenURL Анализирует и открывает URL-адрес.
CInternetSession::SetCookie Задает файл cookie для указанного URL-адреса.
CInternetSession::SetOption Задает параметры сеанса Интернета.

Открытые операторы

Имя Описание
CInternetSession::operator HINTERNET Дескриптор текущего сеанса Интернета.

Замечания

Если подключение к Интернету должно поддерживаться в течение длительности приложения, можно создать CInternetSession член класса CWinApp.

После создания сеанса Интернета можно вызвать OpenURL. CInternetSession затем анализирует URL-адрес, вызывая глобальную функцию AfxParseURL. Независимо от типа протокола, CInternetSession интерпретирует URL-адрес и управляет им для вас. Он может обрабатывать запросы для локальных файлов, определенных с помощью ресурса URL-адреса "file://". OpenURL возвращает указатель на CStdioFile объект, если имя, передаваемое вами, является локальным файлом.

Если вы открываете URL-адрес на интернет-сервере с помощью OpenURL, вы можете прочитать информацию с сайта. Если вы хотите выполнить действия, относящиеся к службе (например, HTTP, FTP или gopher) для файлов, расположенных на сервере, необходимо установить соответствующее соединение с этим сервером. Чтобы открыть определенное подключение непосредственно к определенной службе, используйте одну из следующих функций-членов:

  • GetGopherConnection чтобы открыть подключение к службе gopher.

  • GetHttpConnection чтобы открыть подключение к службе HTTP.

  • GetFtpConnection чтобы открыть подключение к службе FTP.

SetOption позволяет задать параметры запроса сеанса, такие как значения времени ожидания, количество повторных попыток и т. д.

CInternetSessionфункции-члены SetCookieи GetCookieLength GetCookieпредоставляют средства для управления базой данных cookie Win32, с помощью которой серверы и скрипты поддерживают сведения о состоянии клиентской рабочей станции.

Дополнительные сведения об основных задачах программирования в Интернете см. в статье "Первые шаги в Интернете: WinInet Общие сведения об использовании классов MFC WinInet см. в статье "Интернет-программирование".WinInet

Примечание.

CInternetSession вызовет AfxThrowNotSupportedException исключение для неподдерживаемых типов служб. В настоящее время поддерживаются только следующие типы служб: FTP, HTTP, gopher и file.

Иерархия наследования

CObject
CInternetSession

Требования

Заголовок: afxinet.h

CInternetSession::CInternetSession

Эта функция-член вызывается при CInternetSession создании объекта.

CInternetSession(
    LPCTSTR pstrAgent = NULL,
    DWORD_PTR dwContext = 1,
    DWORD dwAccessType = PRE_CONFIG_INTERNET_ACCESS,
    LPCTSTR pstrProxyName = NULL,
    LPCTSTR pstrProxyBypass = NULL,
    DWORD dwFlags = 0);

Параметры

pstrAgent
Указатель на строку, которая определяет имя приложения или сущности, вызывающей функции Интернета (например, Microsoft Internet Browser). Если pstrAgent значение равно NULL (по умолчанию), платформа вызывает глобальную функцию AfxGetAppName, которая возвращает строку, завершающую значение NULL, содержащую имя приложения. Некоторые протоколы используют эту строку для идентификации приложения на сервере.

dwContext
Идентификатор контекста для операции. dwContext определяет сведения о состоянии операции, возвращаемые CInternetSession::OnStatusCallback. Значение по умолчанию равно 1; однако можно явно назначить определенный идентификатор контекста для операции. Объект и любая работа, которую она выполняет, будет связана с этим идентификатором контекста.

dwAccessType
Тип необходимого доступа. Ниже приведены допустимые значения, одно из которых может быть предоставлено:

  • INTERNET_OPEN_TYPE_PRECONFIG Подключитесь с помощью предварительно настроенных параметров в реестре. Этот тип доступа задается в качестве значения по умолчанию. Чтобы подключиться через прокси-сервер TIS, задайте dwAccessType значение этого значения. Затем необходимо задать реестр соответствующим образом.

  • INTERNET_OPEN_TYPE_DIRECT Подключитесь непосредственно к Интернету.

  • INTERNET_OPEN_TYPE_PROXY Подключитесь через прокси-сервер CERN.

Сведения о подключении с различными типами прокси-серверов см. в разделе "Действия" в типичном клиентском приложении FTP.

pstrProxyName
Имя предпочтительного прокси-сервера CERN, если dwAccessType задано как INTERNET_OPEN_TYPE_PROXY. Значение по умолчанию — NULL.

pstrProxyBypass
Указатель на строку, содержащую необязательный список адресов сервера. Эти адреса могут быть обходить при использовании прокси-доступа. Если задано NULL значение, список обходов будет считываться из реестра. Этот параметр имеет смысл только в том случае, если dwAccessType задано значение INTERNET_OPEN_TYPE_PROXY.

dwFlags
Указывает различные параметры кэширования. Значение по умолчанию — 0. Возможные значения:

  • INTERNET_FLAG_DONT_CACHE Не кэшируйте данные локально или на серверах шлюза.

  • INTERNET_FLAG_OFFLINE Операции загрузки удовлетворены только с помощью постоянного кэша. Если элемент не существует в кэше, возвращается соответствующий код ошибки. Этот флаг может сочетаться с побитовой "или" (|) оператором.

Замечания

CInternetSession является первой функцией Интернета, вызываемой приложением. Он инициализирует внутренние структуры данных и готовится к будущим вызовам из приложения.

Если подключение к Интернету не может быть открыто, CInternetSession вызывает исключение AfxThrowInternetException.

Пример

Пример см. в примере CFtpFileFind.

CInternetSession::Close

Вызовите эту функцию-член, когда приложение завершит работу с CInternetSession объектом.

virtual void Close();

Пример

Пример см. в примере CFtpFileFind.

CInternetSession::EnableStatusCallback

Вызовите эту функцию-член, чтобы включить обратный вызов состояния.

BOOL EnableStatusCallback(BOOL bEnable = TRUE);

Параметры

bEnable
Указывает, включен или отключен обратный вызов. Значение по умолчанию — TRUE.

Возвращаемое значение

Имеет ненулевое значение в случае успешного выполнения, иначе — 0. Если вызов завершается сбоем, определите причину сбоя, проверив создаваемый CInternetException объект.

Замечания

При обработке обратного вызова состояния можно указать состояние о ходе операции (например, разрешение имени, подключение к серверу и т. д.) в строке состояния приложения. Отображение состояния операции особенно желательно во время долгосрочной операции.

Так как обратные вызовы происходят во время обработки запроса, приложение должно тратить как можно меньше времени на обратный вызов, чтобы предотвратить снижение пропускной способности данных в сети. Например, создание диалогового окна в обратном вызове может быть такой длительной операцией, что сервер завершает запрос.

Обратный вызов состояния не может быть удален до тех пор, пока ожидаются все обратные вызовы.

Для асинхронной обработки любых операций необходимо создать собственный поток или использовать функции WinInet без MFC.

CInternetSession::GetContext

Вызовите эту функцию-член, чтобы получить значение контекста для определенного сеанса приложения.

DWORD_PTR GetContext() const;

Возвращаемое значение

Идентификатор контекста, определенный приложением.

Замечания

OnStatusCallback использует идентификатор контекста, возвращаемый GetContext для отчета о состоянии конкретного приложения. Например, когда пользователь активирует интернет-запрос, который включает возврат сведений о состоянии, обратный вызов состояния использует идентификатор контекста для отчета о состоянии этого конкретного запроса. Если пользователь активирует два отдельных интернет-запроса, которые включают возврат сведений о состоянии, OnStatusCallback использует идентификаторы контекста для возврата состояния о соответствующих запросах. Следовательно, идентификатор контекста используется для всех операций обратного вызова состояния, и он связан с сеансом до завершения сеанса.

Дополнительные сведения об асинхронных операциях см. в статье "Первые шаги в Интернете: WinInet".

CInternetSession::GetCookie

Эта функция-член реализует поведение функции InternetGetCookieWin32, как описано в пакете SDK для Windows.

static BOOL GetCookie(
    LPCTSTR pstrUrl,
    LPCTSTR pstrCookieName,
    LPTSTR pstrCookieData,
    DWORD dwBufLen);

static BOOL GetCookie(
    LPCTSTR pstrUrl,
    LPCTSTR pstrCookieName,
    CString& strCookieData);

Параметры

pstrUrl
Указатель на строку, содержащую URL-адрес.

pstrCookieName
Указатель на строку, содержащую имя файла cookie, который нужно получить для указанного URL-адреса.

pstrCookieData
В первой перегрузке указатель на строку, содержащую адрес буфера, получающего данные cookie. Это значение может быть равно NULL. Во второй перегрузке ссылка на CString объект для получения данных cookie.

dwBufLen
Переменная, указывающая размер буфера pstrCookieData . Если функция выполнена успешно, буфер получает объем данных, скопированных в pstrCookieData буфер. Если pstrCookieData это NULLтак, этот параметр получает значение, указывающее размер буфера, необходимого для копирования всех данных cookie.

Возвращаемое значение

Возвращается TRUE в случае успешного выполнения или в FALSE противном случае. Если вызов завершается ошибкой, вызовите функцию GetLastError Win32, чтобы определить причину ошибки. Применяются следующие значения ошибок:

  • ERROR_NO_MORE_ITEMS Файл cookie для указанного URL-адреса и всех его родителей отсутствует.

  • ERROR_INSUFFICIENT_BUFFER Переданное значение dwBufLen недостаточно для копирования всех данных cookie. Возвращаемое dwBufLen значение — это размер буфера, необходимого для получения всех данных.

Замечания

Во второй перегрузке MFC извлекает данные cookie в предоставленный CString объект.

CInternetSession::GetCookieLength

Вызовите эту функцию-член, чтобы получить длину файла cookie, хранящегося в буфере.

static DWORD GetCookieLength(
    LPCTSTR pstrUrl,
    LPCTSTR pstrCookieName);

Параметры

pstrUrl
Указатель на строку, содержащую URL-адрес.

pstrCookieName
Указатель на строку, содержащую имя файла cookie.

Возвращаемое значение

DWORD Значение, указывающее длину файла cookie, хранящегося в буфере. Ноль, если файл cookie с именем, указанным в pstrCookieName ней, существует.

Замечания

Это значение используется GetCookie.

CInternetSession::GetFtpConnection

Вызовите эту функцию-член, чтобы установить FTP-подключение и получить указатель на CFtpConnection объект.

CFtpConnection* GetFtpConnection(
    LPCTSTR pstrServer,
    LPCTSTR pstrUserName = NULL,
    LPCTSTR pstrPassword = NULL,
    INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER,
    BOOL bPassive = FALSE);

Параметры

pstrServer
Указатель на строку, содержащую имя FTP-сервера.

pstrUserName
Указатель на строку, завершающуюся значением NULL, которая указывает имя пользователя для входа. Если NULLзначение по умолчанию является анонимным.

pstrPassword
Указатель на строку, завершающуюся значением NULL, которая указывает пароль, используемый для входа. Если оба pstrPassword и pstrUserName есть NULL, анонимный пароль по умолчанию — это имя электронной почты пользователя. Если pstrPassword имеет значение NULL (или пустая строка), но pstrUserName не NULLявляется, используется пустой пароль. В следующей таблице описывается поведение четырех возможных параметров pstrUserName и pstrPassword:

pstrUserName pstrPassword Имя пользователя, отправленное на FTP-сервер Пароль, отправленный на FTP-сервер
NULL или " " NULL или " " "anonymous" Имя электронной почты пользователя
NULL Не строка NULL или " " pstrUserName " "
NULL NULL Не строка ОШИБКА ОШИБКА
NULL Не строка NULL Не строка pstrUserName pstrPassword

nPort
Число, определяющее порт TCP/IP для использования на сервере.

bPassive
Указывает пассивный или активный режим для этого сеанса FTP. Если задано значение TRUE, он задает для API dwFlag Win32 значение INTERNET_FLAG_PASSIVE.

Возвращаемое значение

Указатель на объект CFtpConnection. Если вызов завершается сбоем, определите причину сбоя, проверив создаваемый CInternetException объект.

Замечания

GetFtpConnection подключается к FTP-серверу и создает и возвращает указатель на CFTPConnection объект. Он не выполняет определенную операцию на сервере. Если вы планируете читать или записывать в файлы, например, эти операции необходимо выполнить как отдельные действия. Ознакомьтесь с классами CFtpConnection и CFtpFileFind сведениями о поиске файлов, открытии файлов и чтении или записи в файлы. См. статью "Интернет-программирование" с помощью WinInet , чтобы выполнить общие задачи подключения FTP.

Пример

Пример см. в примере CFtpFileFind.

CInternetSession::GetGopherConnection

Вызовите эту функцию-член, чтобы установить новое соединение с gopher и получить указатель на CGopherConnection объект.

CGopherConnection* GetGopherConnection(
    LPCTSTR pstrServer,
    LPCTSTR pstrUserName = NULL,
    LPCTSTR pstrPassword = NULL,
    INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER);

Параметры

pstrServer
Указатель на строку, содержащую имя сервера gopher.

pstrUserName
Указатель на строку, содержащую имя пользователя.

pstrPassword
Указатель на строку, содержащую пароль доступа.

nPort
Число, определяющее порт TCP/IP для использования на сервере.

Возвращаемое значение

Указатель на объект CGopherConnection. Если вызов завершается сбоем, определите причину сбоя, проверив создаваемый CInternetException объект.

Замечания

GetGopherConnection подключается к серверу gopher и создает и возвращает указатель на CGopherConnection объект. Он не выполняет определенную операцию на сервере. Если вы планируете считывать или записывать данные, например, эти операции необходимо выполнить как отдельные действия. Ознакомьтесь с классами CGopherConnectionCGopherFileCGopherFileFind и сведениями о поиске файлов, открытии файлов и чтении или записи в файлы. Сведения о просмотре FTP-сайта см. в функции-члене OpenURL. См. статью "Интернет-программирование с помощью WinInet ", чтобы выполнить общие задачи подключения к шифрам.

CInternetSession::GetHttpConnection

Вызовите эту функцию-член, чтобы установить HTTP-соединение и получить указатель на CHttpConnection объект.

CHttpConnection* GetHttpConnection(
    LPCTSTR pstrServer,
    INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER,
    LPCTSTR pstrUserName = NULL,
    LPCTSTR pstrPassword = NULL);

CHttpConnection* GetHttpConnection(
    LPCTSTR pstrServer,
    DWORD dwFlags,
    INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER,
    LPCTSTR pstrUserName = NULL,
    LPCTSTR pstrPassword = NULL);

Параметры

pstrServer
Указатель на строку, содержащую имя HTTP-сервера.

nPort
Число, определяющее порт TCP/IP для использования на сервере.

pstrUserName
Указатель на строку, содержащую имя пользователя.

pstrPassword
Указатель на строку, содержащую пароль доступа.

dwflags
Любое сочетание INTERNET_FLAG_* флагов. См. таблицу в разделе CHttpConnection::OpenRequest "Примечания" описания значенийdwFlags.

Возвращаемое значение

Указатель на объект CHttpConnection. Если вызов завершается сбоем, определите причину сбоя, проверив создаваемый CInternetException объект.

Замечания

GetHttpConnection подключается к HTTP-серверу и создает и возвращает указатель на CHttpConnection объект. Он не выполняет определенную операцию на сервере. Если вы собираетесь запросить заголовок HTTP, например, необходимо выполнить эту операцию как отдельный шаг. Ознакомьтесь с классами CHttpConnection и CHttpFile сведениями о операциях, которые можно выполнить с помощью подключения к HTTP-серверу. Сведения о просмотре HTTP-сайта см. в функции-члене OpenURL. См. статью "Интернет-программирование с помощью WinInet " для выполнения распространенных задач http-подключения.

CInternetSession::OnStatusCallback

Эта функция-член вызывается платформой для обновления состояния при включении обратного вызова состояния и ожидающей операции.

virtual void OnStatusCallback(
    DWORD_PTR dwContext,
    DWORD dwInternetStatus,
    LPVOID lpvStatusInformation,
    DWORD dwStatusInformationLength);

Параметры

dwContext
Значение контекста, предоставленное приложением.

dwInternetStatus
Код состояния, указывающий, почему выполняется обратный вызов. См . примечания для таблицы возможных значений.

lpvStatusInformation
Указатель на буфер, содержащий сведения, относящиеся к этому обратному вызову.

dwStatusInformationLength
Размер lpvStatusInformation.

Замечания

Чтобы воспользоваться преимуществами обратного вызова состояния, необходимо сначала вызвать EnableStatusCallback .

Параметр dwInternetStatus указывает, что выполняется операция и определяет, какое содержимое lpvStatusInformation будет. dwStatusInformationLength указывает длину данных, включенных в lpvStatusInformation. Следующие значения dwInternetStatus состояния определяются следующим образом:

Значение Значение
INTERNET_STATUS_RESOLVING_NAME Поиск IP-адреса имени, содержащегося в lpvStatusInformation.
INTERNET_STATUS_NAME_RESOLVED Успешно найден IP-адрес имени, содержащегося в lpvStatusInformation.
INTERNET_STATUS_CONNECTING_TO_SERVER Подключение к адресу сокета (SOCKADDR), на который указывает lpvStatusInformation.
INTERNET_STATUS_CONNECTED_TO_SERVER Успешно подключен к адресу сокета (SOCKADDR), на который указывает lpvStatusInformation.
INTERNET_STATUS_SENDING_REQUEST Отправка запроса информации на сервер. Параметр lpvStatusInformation имеет значение NULL.
INTERNET_STATUS_REQUEST_SENT Успешно отправлен запрос информации на сервер. Параметр lpvStatusInformation имеет значение NULL.
INTERNET_STATUS_RECEIVING_RESPONSE Ожидание ответа сервера на запрос. Параметр lpvStatusInformation имеет значение NULL.
INTERNET_STATUS_RESPONSE_RECEIVED Успешно получен ответ от сервера. Параметр lpvStatusInformation имеет значение NULL.
INTERNET_STATUS_CLOSING_CONNECTION Закрытие подключения к серверу. Параметр lpvStatusInformation имеет значение NULL.
INTERNET_STATUS_CONNECTION_CLOSED Успешно закрыло подключение к серверу. Параметр lpvStatusInformation имеет значение NULL.
INTERNET_STATUS_HANDLE_CREATED Используется функцией InternetConnect API Win32, чтобы указать, что она создала новый дескриптор. Это позволяет приложению вызывать функцию InternetCloseHandle Win32 из другого потока, если подключение занимает слишком много времени. Дополнительные сведения об этих функциях см. в windows SDKfor.
INTERNET_STATUS_HANDLE_CLOSING Успешно завершено это значение дескриптора.

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

Примечание.

Обратные вызовы состояния нуждаются в защите состояния потока. Если вы используете MFC в общей библиотеке, добавьте следующую строку в начало переопределения:

AFX_MANAGE_STATE(AfxGetAppModuleState());

Дополнительные сведения об асинхронных операциях см. в статье "Первые шаги в Интернете: WinInet".

CInternetSession::OpenURL

Вызовите эту функцию-член, чтобы отправить указанный запрос на HTTP-сервер и разрешить клиенту указывать дополнительные заголовки RFC822, MIME или HTTP для отправки вместе с запросом.

CStdioFile* OpenURL(
    LPCTSTR pstrURL,
    DWORD_PTR dwContext = 1,
    DWORD dwFlags = INTERNET_FLAG_TRANSFER_ASCII,
    LPCTSTR pstrHeaders = NULL,
    DWORD dwHeadersLength = 0);

Параметры

pstrURL
Указатель на имя URL-адреса для начала чтения. Только URL-адреса, начинающиеся с file:, ftp:gopher:или http: поддерживаются. Утверждает, имеет pstrURL ли значение NULL.

dwContext
Определяемое приложением значение, передаваемое с возвращенным дескриптором в обратном вызове.

dwFlags
Флаги, описывающие способ обработки этого подключения. Дополнительные сведения о допустимых флагах см. в примечаниях. Допустимые флаги:

  • INTERNET_FLAG_TRANSFER_ASCII Значение по умолчанию. Перенесите файл в виде текста ASCII.

  • INTERNET_FLAG_TRANSFER_BINARY Перенесите файл в двоичный файл.

  • INTERNET_FLAG_RELOAD Получите данные из провода, даже если они кэшируются локально.

  • INTERNET_FLAG_DONT_CACHE Не кэшируйте данные локально или в шлюзах.

  • INTERNET_FLAG_SECURE Этот флаг применим только к HTTP-запросам. Он запрашивает безопасные транзакции на проводе с помощью уровня безопасных сокетов или РСТ.

  • INTERNET_OPEN_FLAG_USE_EXISTING_CONNECT По возможности повторно используйте существующие подключения к серверу для новых запросов, созданных OpenUrl вместо создания нового сеанса для каждого запроса подключения.

  • INTERNET_FLAG_PASSIVE Используется для FTP-сайта. Использует пассивные семантики FTP. Используется с CInternetConnection OpenURL.

pstrHeaders
Указатель на строку, содержащую заголовки, отправляемые на HTTP-сервер.

dwHeadersLength
Длина в символах дополнительных заголовков. Если это и pstrHeaders не так-1LNULL, предполагается, pstrHeaders что длина завершается нулевой, а длина вычисляется.

Возвращаемое значение

Возвращает дескриптор файлов только для служб FTP, GOPHER, HTTP и FILE-типов. Возвращается NULL , если синтаксический анализ был неудачным.

Указатель, OpenURL который возвращается, зависит от pstrURLтипа службы. В приведенной ниже таблице показаны возможные указатели OpenURL , которые могут возвращать.

Тип URL-адреса Возвраты
file:// CStdioFile*
http:// CHttpFile*
gopher:// CGopherFile*
ftp:// CInternetFile*

Замечания

Параметр dwFlags должен включать INTERNET_FLAG_TRANSFER_ASCII либо или INTERNET_FLAG_TRANSFER_BINARY, но не оба. Остальные флаги можно объединить с побитовой "или" (|) оператором.

OpenURL, который упаковывает функцию InternetOpenURLWin32, позволяет загружать, извлекать и считывать данные с интернет-сервера. OpenURL не позволяет манипулировать файлами в удаленном расположении, поэтому он не CInternetConnection требует объекта.

Чтобы использовать функции, связанные с подключением (то есть для конкретного протокола), например запись в файл, необходимо открыть сеанс, а затем открыть определенное соединение, а затем использовать это подключение для открытия файла в нужном режиме. Дополнительные CInternetConnection сведения о функциях, относящихся к подключению.

CInternetSession::operator HINTERNET

Используйте этот оператор, чтобы получить дескриптор Windows для текущего сеанса Интернета.

operator HINTERNET() const;

CInternetSession::SetCookie

Задает файл cookie для указанного URL-адреса.

static BOOL SetCookie(
    LPCTSTR pstrUrl,
    LPCTSTR pstrCookieName,
    LPCTSTR pstrCookieData);

Параметры

pstrUrl
Указатель на строку, завершающуюся значением NULL, которая указывает URL-адрес, для которого должен быть задан файл cookie.

pstrCookieName
Указатель на строку, содержащую имя файла cookie.

pstrCookieData
Указатель на строку, содержащую фактические строковые данные для связывания с URL-адресом.

Возвращаемое значение

Возвращается TRUE в случае успешного выполнения или в FALSE противном случае. Чтобы получить определенный код ошибки, вызовите GetLastError.

Замечания

Эта функция-член реализует поведение сообщения InternetSetCookieWin32, как описано в пакете SDK для Windows.

CInternetSession::SetOption

Вызовите эту функцию-член, чтобы задать параметры сеанса Интернета.

BOOL SetOption(
    DWORD dwOption,
    LPVOID lpBuffer,
    DWORD dwBufferLength,
    DWORD dwFlags = 0);

BOOL SetOption(
    DWORD dwOption,
    DWORD dwValue,
    DWORD dwFlags = 0);

Параметры

dwOption
Параметр Интернета, который нужно задать. Список возможных параметров см. в пакете SDK для Windows.

lpBuffer
Буфер, содержащий параметр параметра.

dwBufferLength
Длина или размер lpBuffer dwValue.

dwValue
Значение DWORD , содержащее параметр.

dwFlags
Указывает различные параметры кэширования. Значение по умолчанию — 0. Возможные значения:

  • INTERNET_FLAG_DONT_CACHE Не кэшируйте данные локально или на серверах шлюза.

  • INTERNET_FLAG_OFFLINE Операции загрузки удовлетворены только с помощью постоянного кэша. Если элемент не существует в кэше, возвращается соответствующий код ошибки. Этот флаг может сочетаться с побитовой "или" (|) оператором.

Возвращаемое значение

Если операция выполнена успешно, возвращается значение TRUE . Если произошла ошибка, возвращается значение FALSE . При сбое вызова можно вызвать функцию GetLastError Win32, чтобы определить причину ошибки.

См. также

CObject Класс
Диаграмма иерархии
CInternetConnection Класс
CHttpConnection Класс
CFtpConnection Класс
CGopherConnection Класс