IPersistStream::Load 方法 (objidl.h)

從先前儲存的數據流初始化物件。

語法

HRESULT Load(
  [in] IStream *pStm
);

參數

[in] pStm

應該從中載入對象的數據流 的 IStream 指標。

傳回值

這個方法可以傳回下列值。

傳回碼 描述
S_OK
已成功完成命令。
E_OUTOFMEMORY
對象因為記憶體不足而未載入。
E_FAIL
由於缺少記憶體以外的一些原因,所以未載入物件。

備註

這個方法會從其相關聯的數據流載入物件。 搜尋指標會設定為在最新的 IPersistStream::Save 方法中。 這個方法可以搜尋和讀取數據流,但無法寫入該數據流。

來電者附註

您通常會呼叫 OleLoadFromStream 函式,而不是直接呼叫 IPersistStream::Load
  1. 呼叫 ReadClassStm 函式,以從數據流取得類別識別碼。
  2. 呼叫 CoCreateInstance 函式來建立 對象的實例。
  3. 查詢 IPersistStream 的實例。
  4. 呼叫 IPersistStream::Load
OleLoadFromStream 函式假設物件會以類別標識符後面接著對象數據儲存在數據流中。 此儲存模式是由 OLE 所提供的泛型複合 Moniker 實作所使用。

如果物件未使用此模式儲存,您必須自行呼叫方法。

URL Moniker 附注

使用 OleSaveToStream) ,從數據流內的數據初始化 URL Moniker,通常儲存在該處先前使用其 IPersistStream::Save (。 URL Moniker 的二進位格式是其在 Unicode 中的 URL 字串, (可能是完整或部分 URL 字串,請參閱 CreateURLMonikerEx 以取得詳細數據) 。 這會以 ULONG 字元計數來表示,後面接著許多 Unicode 字元。

規格需求

需求
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 objidl.h

另請參閱

IPersistStream