iOpcFactory::ReadPackageFromStream 方法 (msopc.h)
從數據流還原串行化封裝數據,並建立封裝物件來表示正在讀取的封裝。 雖然從封裝物件或封裝物件本身取得的封裝 API 物件仍在使用中,但數據流可用來存取封裝數據。
語法
HRESULT ReadPackageFromStream(
[in] IStream *stream,
[in] OPC_READ_FLAGS flags,
[out, retval] IOpcPackage **package
);
參數
[in] stream
數據流 之 IStream 介面的指標。
數據流必須是可讀取、可搜尋、具有大小,而且必須包含封裝數據。 此外,如果數據流無法複製,則會以循序方式緩衝和讀取,因此會產生額外負荷。
[in] flags
值,指定快取套件元件的讀取設定,並針對 OPC 一致性需求加以驗證。
[out, retval] package
封裝物件的 IOpcPackage 介面指標,表示要透過數據流讀取的封裝。
傳回值
方法會傳回 HRESULT。 可能的值包括 (但不限於) 下表中的這些值。
傳回碼 | 描述 |
---|---|
|
此方法已成功。 |
|
在 flags 參數中傳遞的值不是有效的 OPC_READ_FLAGS 列舉值。 |
|
這個版本的 Windows 並未實作這個方法。 |
|
至少有一個 數據流 和 封裝 參數是 NULL。 |
|
IStream 介面中的 HRESULT 錯誤碼。 |
|
套件耗用量錯誤群組中的 HRESULT 錯誤碼。 |
|
來自元件 URI 錯誤群組的 HRESULT 錯誤碼。 |
備註
當相同的數據流用來還原串行化封裝時,請勿使用數據流來串行化封裝數據,因為嘗試可能會導致未定義的行為。
封裝 API 可以與對應 OPC 中所指定 ZIP 封存的套件互動,而且這些套件是以 Zip32 (ZIP 2.0) 或 Zip64 (ZIP 4.5) 編碼為基礎。
如需如何使用這個方法來載入封裝的資訊,請參閱 載入封裝 程序設計工作。
舊版 Windows 的支援
Windows 7 之前的 Windows 版本不支援此方法。 如需詳細資訊,請參閱使用封裝 API 和適用於 Windows Vista 的平臺更新 使用者入門。執行緒安全性
封裝物件不是安全線程。
如需詳細資訊,請參閱使用封裝 API 使用者入門。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 7 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 R2 [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | msopc.h |
另請參閱
概觀
參考