Share via


IInitializeWithStream::Initialize 方法 (propsys.h)

使用數據流初始化處理程式。

語法

HRESULT Initialize(
  [in] IStream *pstream,
  [in] DWORD   grfMode
);

參數

[in] pstream

類型: IStream*

代表數據流來源的 IStream 介面指標。

[in] grfMode

類型: DWORD

下列其中一個 STGM 值,指出 pstream 的存取模式。

STGM_READ

pstream 所指示的數據流是唯讀的。

STGM_READWRITE

pstream 所指示的數據流可讀取/寫入。

傳回值

類型: HRESULT

如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。

備註

因為可以使用 Win32 路徑無法存取的數據流,例如具有擴展名 .zip 壓縮文件的內容,所以最好使用 Initialize

pstream 所指向的數據流必須在處理程式的存留期內保持開啟,或直到呼叫 IPropertyStore::Commit 為止。

第一次開啟時,來源數據流參考會指向數據流的開頭。 處理程式可以隨時搜尋和讀取數據流。 您可以在 Initialize 期間實作處理程式,從數據流讀取所有屬性,或等到呼叫進程嘗試列舉或讀取屬性,再從數據流擷取屬性。

處理程序實例應該在其存留期內只初始化一次。 呼叫端嘗試重新初始化處理程式應該會產生錯誤 HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)

規格需求

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