共用方式為


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 值及其他值。

回傳碼 Description
S_OK
已成功取得回覆資料。
BG_E_TOO_LARGE
回覆資料超過最大 1 MB 緩衝區大小。 ppBuffer 參數設為 NULL,pSize 則包含回覆資料的大小。
BG_E_INVALID_STATE
要取得回覆資料,必須將作業狀態 BG_JOB_STATE_TRANSFERRED
E_NOTIMPL
此方法未實作於類型 BG_JOB_TYPE_DOWNLOADBG_JOB_TYPE_UPLOAD的作業。

備註

GetReplyData 方法讓你在呼叫 IBackgroundCopyJob::Complete 方法之前或之後讀取回覆資料。 然而,要從回覆檔案讀取回覆資料,必須先呼叫 Complete 方法;在你呼叫 Complete 方法之前,該檔案無法提供給客戶端。

如果回覆資料超過 1 MB,GetReplyData 方法會回傳 BG_E_TOO_LARGEpSize 包含回覆資料大小)。 若回覆超過 1 MB,請呼叫 IBackgroundCopyJob2::GetReplyFileName 方法來取得檔案名稱。 接著,打開檔案直接讀取回覆資料。

範例

關於使用 GetReplyData 方法的範例,請參見 從 Upload-Reply 工作中取得回應

需求

Requirement 價值觀
最低支援的用戶端 Windows Vista
支援的最低伺服器 Windows Server 2003
目標平臺 窗戶
Header bits1_5.h(包含 Bits.h)
Library Bits.lib
DLL BitsPrx2.dll
可再發行 Windows XP 上的 BITS 1.5

另請參閱

IBackgroundCopyJob2::GetReplyFileName

IBackgroundCopyJob2::SetReplyFileName