共用方式為


COleStreamFile 類別

表示在複合檔案中做為 OLE 結構化儲存體之一部分的資料流 (IStream)。

語法

class COleStreamFile : public CFile

成員

公用建構函式

名稱 描述
COleStreamFile::COleStreamFile 建構 COleStreamFile 物件。

公用方法

名稱 描述
COleStreamFile::Attach 將資料流程與 物件產生關聯。
COleStreamFile::CreateMemoryStream 從全域記憶體建立資料流程,並將它與 物件產生關聯。
COleStreamFile::CreateStream 建立資料流程,並將它與 物件產生關聯。
COleStreamFile::D etach 將資料流程與 物件解除關聯。
COleStreamFile::GetStream 傳回目前的資料流程。
COleStreamFile::OpenStream 保管庫開啟資料流程,並將它與 物件產生關聯。

備註

IStorage物件必須先存在,才能開啟或建立資料流程,除非它是記憶體資料流程。

COleStreamFile 物件操作的方式與 CFile 物件完全相同。

如需運算元據流和儲存體的詳細資訊,請參閱容器:複合檔案 一文

如需詳細資訊,請參閱 Windows SDK 中的 IStream I儲存體

繼承階層架構

CObject

CFile

COleStreamFile

需求

標頭: afxole.h

COleStreamFile::Attach

將提供的 OLE 資料流程與 COleStreamFile 物件產生關聯。

void Attach(LPSTREAM lpStream);

參數

lpStream
指向要與 物件相關聯的 OLE 資料流程 ( IStream )。 不可以是 NULL。

備註

物件不能已經與 OLE 資料流程相關聯。

如需詳細資訊,請參閱 Windows SDK 中的 IStream

COleStreamFile::COleStreamFile

建立 COleStreamFile 物件。

COleStreamFile(LPSTREAM lpStream = NULL);

參數

lpStream
要與 物件關聯的 OLE 資料流程指標。

備註

如果 lpStream 是 Null,則物件不會與 OLE 資料流程相關聯,否則物件會與提供的 OLE 資料流程相關聯。

如需詳細資訊,請參閱 Windows SDK 中的 IStream

COleStreamFile::CreateMemoryStream

保管庫從全域、共用記憶體中建立新的資料流程,其中失敗是正常且預期的狀況。

BOOL CreateMemoryStream(CFileException* pError = NULL);

參數

pError
指向 CFileException 物件或 Null,指出建立作業的完成狀態。 如果您想要監視嘗試建立資料流程所產生的可能例外狀況,請提供此參數。

傳回值

如果成功建立資料流程,則為非零;否則為 0。

備註

記憶體是由 OLE 子系統所配置。

如需詳細資訊,請參閱 Windows SDK 中的 CreateStreamOnHGlobal

COleStreamFile::CreateStream

保管庫會在提供的儲存物件中建立新的資料流程,其中失敗是正常且預期的狀況。

BOOL CreateStream(
    LPSTORAGE lpStorage,
    LPCTSTR lpszStreamName,
    DWORD nOpenFlags = modeReadWrite|shareExclusive|modeCreate,
    CFileException* pError = NULL);

參數

lp儲存體
指向包含要建立之資料流程的 OLE 儲存物件。 不可以是 NULL。

lpszStreamName
要建立之資料流程的名稱。 不可以是 NULL。

nOpenFlags
開啟資料流程時要使用的存取模式。 預設會使用獨佔、讀取/寫入和建立模式。 如需可用模式的完整清單,請參閱 CFile::CFile

pError
指向 CFileException 物件或 Null。 如果您想要監視嘗試建立資料流程所產生的可能例外狀況,請提供此參數。

傳回值

如果成功建立資料流程,則為非零;否則為 0。

備註

如果開啟失敗且 pError 不是 Null,則會擲回檔案例外狀況。

如需詳細資訊,請參閱 Windows SDK 中的 I儲存體::CreateStream

COleStreamFile::D etach

將資料流程與 物件解除關聯,而不關閉資料流程。

LPSTREAM Detach();

傳回值

與 物件相關聯之資料流程 ( IStream ) 的指標。

備註

在程式終止之前,資料流程必須以一些其他方式關閉。

如需詳細資訊,請參閱 Windows SDK 中的 IStream

COleStreamFile::GetStream

呼叫此函式以傳回目前資料流程的指標。

IStream* GetStream() const;

傳回值

目前資料流程介面的指標( IStream )。

COleStreamFile::OpenStream

開啟現有的資料流程。

BOOL OpenStream(
    LPSTORAGE lpStorage,
    LPCTSTR lpszStreamName,
    DWORD nOpenFlags = modeReadWrite|shareExclusive,
    CFileException* pError = NULL);

參數

lp儲存體
指向包含要開啟之資料流程的 OLE 儲存物件。 不可以是 NULL。

lpszStreamName
要開啟之資料流程的名稱。 不可以是 NULL。

nOpenFlags
開啟資料流程時要使用的存取模式。 預設會使用獨佔和讀取/寫入模式。 如需可用模式的完整清單,請參閱 CFile::CFile

pError
指向 CFileException 物件或 Null。 如果您想要監視嘗試開啟資料流程所產生的可能例外狀況,請提供此參數。

傳回值

如果成功開啟資料流程,則為非零;否則為 0。

備註

如果開啟失敗且 pError 不是 Null,則會擲回檔案例外狀況。

如需詳細資訊,請參閱 Windows SDK 中的 I儲存體::OpenStream

另請參閱

CFile 類別
階層架構圖表