Compartilhar via


Função OleCreateFromFile (ole2.h)

Cria um objeto inserido do conteúdo de um arquivo nomeado.

Sintaxe

HRESULT OleCreateFromFile(
  [in]  REFCLSID        rclsid,
  [in]  LPCOLESTR       lpszFileName,
  [in]  REFIID          riid,
  [in]  DWORD           renderopt,
  [in]  LPFORMATETC     lpFormatEtc,
  [in]  LPOLECLIENTSITE pClientSite,
  [in]  LPSTORAGE       pStg,
  [out] LPVOID          *ppvObj
);

Parâmetros

[in] rclsid

Esse parâmetro é reservado e deve ser CLSID_NULL.

[in] lpszFileName

Ponteiro para uma cadeia de caracteres que especifica o caminho completo do arquivo do qual o objeto deve ser inicializado.

[in] riid

Referência ao identificador da interface que o chamador usa posteriormente para se comunicar com o novo objeto (geralmente IID_IOleObject, definido nos cabeçalhos OLE como a ID da interface de IOleObject).

[in] renderopt

Valor da enumeração OLERENDER que indica os recursos de desenho ou recuperação de dados armazenados em cache localmente que o objeto recém-criado deve ter. O valor OLERENDER escolhido afeta os valores possíveis para o parâmetro lpFormatEtc .

[in] lpFormatEtc

Dependendo de qual dos sinalizadores OLERENDER é usado como o valor de renderopt, ponteiro para um dos valores de enumeração FORMATETC . Consulte também a enumeração OLERENDER para obter restrições.

[in] pClientSite

Ponteiro para uma instância do IOleClientSite, a interface primária por meio da qual o objeto solicitará serviços de seu contêiner. Este parâmetro pode ser NULL.

[in] pStg

Ponteiro para a interface IStorage no objeto de armazenamento. Esse parâmetro não pode ser NULL.

[out] ppvObj

Endereço da variável de ponteiro que recebe o ponteiro de interface solicitado em riid. Após o retorno bem-sucedido, *ppvObj contém o ponteiro de interface solicitado no objeto recém-criado.

Retornar valor

Essa função retorna S_OK com êxito. Outros valores possíveis incluem o seguinte.

Código de retorno Descrição
STG_E_FILENOTFOUND
Arquivo não associado.
OLE_E_CANT_BINDTOSOURCE
Não é possível associar à origem.
STG_E_MEDIUMFULL
O meio está cheio.
DV_E_TYMED
TYMED inválido.
DV_E_LINDEX
LINDEX inválido.
DV_E_FORMATETC
Estrutura FORMATETC inválida.

Comentários

A função OleCreateFromFile cria um novo objeto inserido do conteúdo de um arquivo nomeado. Se o ProgID no banco de dados de registro contiver a chave PackageOnFileDrop, ele criará um pacote. Caso contrário, a função chama a função GetClassFile para obter o CLSID associado ao parâmetro lpszFileName e, em seguida, cria um objeto inserido OLE 2 associado a esse CLSID. O parâmetro rclsid de OleCreateFromFile sempre será ignorado e deverá ser definido como CLSID_NULL.

Quanto a outras funções OleCreateXxx, o objeto recém-criado não é mostrado ao usuário para edição, o que requer uma operação DoVerb . Ele é usado para implementar operações de inserção de arquivo.

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 (inclua Ole2.h)
Biblioteca Ole32.lib
DLL Ole32.dll

Confira também

Getclassfile