Método IInitializeWithStream::Initialize (propsys.h)

Inicializa um manipulador com um fluxo.

Sintaxe

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

Parâmetros

[in] pstream

Tipo: IStream*

Um ponteiro para uma interface IStream que representa a origem do fluxo.

[in] grfMode

Tipo: DWORD

Um dos seguintes valores STGM que indica o modo de acesso para pstream.

STGM_READ

O fluxo indicado por pstream é somente leitura.

STGM_READWRITE

O fluxo indicado pelo pstream é acessível para leitura/gravação.

Retornar valor

Tipo: HRESULT

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Esse método é preferido para Inicializar devido à sua capacidade de usar fluxos que não são acessíveis por meio de um caminho Win32, como o conteúdo de um arquivo compactado com uma extensão de nome de arquivo .zip.

O fluxo apontado por pstream deve permanecer aberto durante o tempo de vida do manipulador ou até que IPropertyStore::Commit seja chamado.

Quando aberto pela primeira vez, a referência do fluxo de origem aponta para o início do fluxo. O manipulador pode procurar e ler do fluxo a qualquer momento. Um manipulador pode ser implementado para ler todas as propriedades do fluxo durante Initialize ou pode aguardar até que o processo de chamada tente enumerar ou ler propriedades antes de efetuá-las no fluxo.

Uma instância de manipulador deve ser inicializada apenas uma vez em seu tempo de vida. As tentativas do chamador de reinicializar o manipulador devem resultar no erro HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED).

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho propsys.h