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


Метод IBackgroundCopyJob2::GetReplyData (bits1_5.h)

Извлекает из серверного приложения копию данных ответа в памяти. Вызывайте этот метод, только если тип задания — BG_JOB_TYPE_UPLOAD_REPLY, а его состояние — BG_JOB_STATE_TRANSFERRED.

Синтаксис

HRESULT GetReplyData(
  [in, out] byte   **ppBuffer,
  [out]     UINT64 *pLength
);

Параметры

[in, out] ppBuffer

Буфер для хранения данных ответа. Метод присваивает ppBufferзначение NULL , если серверное приложение не вернуло ответ. Вызовите функцию CoTaskMemFree , чтобы освободить ppBuffer по завершении.

[out] pLength

Размер (в байтах) данных ответа в ppBuffer.

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

Этот метод возвращает следующие значения HRESULT , а также другие.

Код возврата Описание
S_OK
Данные ответа успешно получены.
BG_E_TOO_LARGE
Объем данных ответа превышает максимальный размер буфера в 1 МБ. Параметр ppBuffer имеет значение NULL, а pSize содержит размер данных ответа.
BG_E_INVALID_STATE
Чтобы получить данные ответа, состояние задания должно быть BG_JOB_STATE_TRANSFERRED.
E_NOTIMPL
Этот метод не реализован для заданий типа BG_JOB_TYPE_DOWNLOAD или BG_JOB_TYPE_UPLOAD.

Комментарии

Метод GetReplyData позволяет считывать данные ответа до или после вызова метода IBackgroundCopyJob::Complete . Однако для чтения данных ответа из файла ответов необходимо сначала вызвать метод Complete . файл не будет доступен клиенту до тех пор, пока вы не вызовете метод Complete .

Метод GetReplyData возвращает BG_E_TOO_LARGE , если данные ответа превышают 1 МБ (размер pSize содержит размер ответных данных). Чтобы получить ответ, если он превышает 1 МБ, вызовите метод IBackgroundCopyJob2::GetReplyFileName , чтобы получить имя файла. Затем откройте файл и прочтите данные ответа напрямую.

Примеры

Пример использования метода GetReplyData см. в разделе Получение ответа из задания Upload-Reply.

Требования

Требование Значение
Минимальная версия клиента Windows Vista
Минимальная версия сервера Windows Server 2003
Целевая платформа Windows
Header bits1_5.h (включая Bits.h)
Библиотека Bits.lib
DLL BitsPrx2.dll
Распространяемые компоненты BITS 1.5 в Windows XP

См. также раздел

IBackgroundCopyJob2::GetReplyFileName

IBackgroundCopyJob2::SetReplyFileName