Compartilhar via


Função SetConvertStg (ole2.h)

A função SetConvertStg define o bit convert em um objeto de armazenamento para indicar que o objeto deve ser convertido em uma nova classe quando for aberto. A configuração pode ser recuperada com uma chamada para a função GetConvertStg .

Sintaxe

HRESULT SetConvertStg(
  LPSTORAGE pStg,
  BOOL      fConvert
);

Parâmetros

pStg

Ponteiro IStorage para o objeto de armazenamento no qual definir o bit de conversão.

fConvert

Se TRUE, define o bit de conversão para o objeto para indicar que o objeto deve ser convertido quando aberto. Se FALSE, limpará o bit de conversão.

Retornar valor

Consulte os métodos IStorage::CreateStream, IStorage::OpenStream, ISequentialStream::Read e ISequentialStream::Write para possíveis erros de acesso de armazenamento e fluxo.

Comentários

A função SetConvertStg determina o status do bit de conversão em um objeto independente. Ele é chamado pelo aplicativo de contêiner e pelo servidor no processo de conversão de um objeto de uma classe para outra. Quando um usuário especifica por meio de uma caixa de diálogo Converter para (que o contêiner produz com uma chamada para a função OleUIConvert ) que um objeto deve ser convertido, o contêiner deve seguir as seguintes etapas:

  1. Descarregue o objeto se ele estiver carregado no momento.
  2. Chame WriteClassStg para gravar o novo CLSID no armazenamento de objetos.
  3. Chame WriteFmtUserTypeStg para gravar o novo nome de tipo de usuário e o formato de main existente no armazenamento.
  4. Chame SetConvertStg com o parâmetro fConvert definido como TRUE para indicar que o objeto foi marcado para conversão em uma nova classe na próxima vez que for carregado.
  5. Pouco antes de o objeto ser carregado, chame OleDoAutoConvert para manipular qualquer conversão de objeto necessária, a menos que você chame OleLoad, que o chama internamente.
Quando um objeto é inicializado de um objeto de armazenamento e o servidor é o destino de uma operação convert-to, o servidor de objeto deve fazer o seguinte:
  1. Chame a função GetConvertStg para recuperar o valor do bit de conversão.
  2. Se o bit estiver definido, o servidor lerá os dados do objeto de acordo com o formato associado ao novo CLSID.
  3. Quando o objeto é solicitado a se salvar, o objeto deve chamar a função WriteFmtUserTypeStg usando o formato nativo normal e o tipo de usuário do objeto.
  4. Em seguida, o objeto deve chamar SetConvertStg com o parâmetro fConvert definido como FALSE para redefinir o bit de conversão do objeto.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho ole2.h
Biblioteca Ole32.lib
DLL Ole32.dll

Confira também

GetConvertStg