Compartilhar via


Classe COleStreamFile

Representa um fluxo de dados (IStream) em um arquivo composto como parte do Armazenamento Estruturado OLE.

Sintaxe

class COleStreamFile : public CFile

Membros

Construtores públicos

Nome Descrição
COleStreamFile::COleStreamFile Constrói um objeto COleStreamFile.

Métodos públicos

Nome Descrição
COleStreamFile::Attach Associa um fluxo ao objeto.
COleStreamFile::CreateMemoryStream Cria um fluxo de memória global e o associa ao objeto.
COleStreamFile::CreateStream Cria um fluxo e o associa ao objeto.
COleStreamFile::Detach Desassocia o fluxo do objeto.
COleStreamFile::GetStream Retorna o fluxo atual.
COleStreamFile::OpenStream Cria um fluxo e o associa ao objeto com segurança.

Comentários

Um objeto IStorage deve existir antes que o fluxo possa ser aberto ou criado, a menos que seja um fluxo de memória.

Os objetos COleStreamFile são manipulados exatamente como objetos CFile.

Para obter mais informações sobre como manipular fluxos e armazenamentos, consulte o artigo Contêineres: arquivos compostos.

Para mais informações, confira IStream e IStorage no SDK do Windows.

Hierarquia de herança

CObject

CFile

COleStreamFile

Requisitos

Cabeçalho: afxole.h

COleStreamFile::Attach

Associa o fluxo OLE fornecido ao objeto COleStreamFile.

void Attach(LPSTREAM lpStream);

Parâmetros

lpStream
Aponta para o fluxo OLE (IStream) a ser associado ao objeto. Não pode ser NULL.

Comentários

O objeto ainda não deve estar associado a um fluxo OLE.

Para saber mais, confira IStream no SDK do Windows.

COleStreamFile::COleStreamFile

Cria um objeto COleStreamFile.

COleStreamFile(LPSTREAM lpStream = NULL);

Parâmetros

lpStream
Ponteiro para o fluxo OLE a ser associado ao objeto.

Comentários

Se lpStream for NULL, o objeto não estará associado a um fluxo OLE; caso contrário, o objeto será associado ao fluxo OLE fornecido.

Para saber mais, confira IStream no SDK do Windows.

COleStreamFile::CreateMemoryStream

Cria com segurança um novo fluxo a partir da memória global compartilhada, em que uma falha é uma condição normal e esperada.

BOOL CreateMemoryStream(CFileException* pError = NULL);

Parâmetros

pError
Aponta para um objeto CFileException ou NULL que indica o status de conclusão da operação de criação. Forneça esse parâmetro se você quiser monitorar possíveis exceções geradas ao tentar criar o fluxo.

Valor de retorno

Não zero se o fluxo tiver sido criado com êxito; caso contrário, 0.

Comentários

A memória é alocada pelo subsistema OLE.

Para obter mais informações, consulte CreateStreamOnHGlobal no SDK do Windows.

COleStreamFile::CreateStream

Cria com segurança um novo fluxo no objeto de armazenamento fornecido em que uma falha é uma condição normal e esperada.

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

Parâmetros

lpStorage
Aponta para o objeto de armazenamento OLE que contém o fluxo a ser criado. Não pode ser NULL.

lpszStreamName
O nome do fluxo a ser criado. Não pode ser NULL.

nOpenFlags
O modo de acesso a ser usado ao abrir o fluxo. Modos exclusivos, de leitura/gravação e de criação são usados por padrão. Para obter uma lista completa dos modos disponíveis, consulte CFile::CFile.

pError
Aponta para um objeto CFileException ou NULL. Forneça esse parâmetro se você quiser monitorar possíveis exceções geradas ao tentar criar o fluxo.

Valor de retorno

Não zero se o fluxo tiver sido criado com êxito; caso contrário, 0.

Comentários

Uma exceção de arquivo será gerada se a abertura falhar e pError não for NULL.

Para mais informações, confira IStorage::CreateStream no SDK do Windows.

COleStreamFile::Detach

Desassocia o fluxo do objeto sem fechar o fluxo.

LPSTREAM Detach();

Valor de retorno

Um ponteiro para o fluxo (IStream) que estava associado ao objeto.

Comentários

O fluxo deve ser fechado de alguma outra forma antes do encerramento do programa.

Para saber mais, confira IStream no SDK do Windows.

COleStreamFile::GetStream

Chame essa função para retornar um ponteiro para o fluxo atual.

IStream* GetStream() const;

Valor de retorno

Um ponteiro para a interface do fluxo atual ( IStream).

COleStreamFile::OpenStream

Abre um fluxo existente.

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

Parâmetros

lpStorage
Aponta para o objeto de armazenamento OLE que contém o fluxo a ser aberto. Não pode ser NULL.

lpszStreamName
O nome do fluxo a ser aberto. Não pode ser NULL.

nOpenFlags
O modo de acesso a ser usado ao abrir o fluxo. Modos exclusivos e de leitura/gravação são usados por padrão. Para obter a lista completa dos modos disponíveis, consulte CFile::CFile.

pError
Aponta para um objeto CFileException ou NULL. Forneça esse parâmetro se você quiser monitorar possíveis exceções geradas ao tentar abrir o fluxo.

Valor de retorno

Não zero se o fluxo tiver sido aberto com êxito; caso contrário, 0.

Comentários

Uma exceção de arquivo será gerada se a abertura falhar e pError não for NULL.

Para mais informações, confira IStorage::OpenStream no SDK do Windows.

Confira também

Classe CFile
Gráfico da hierarquia