Condividi tramite


Funzione OleCreateFromFile (ole2.h)

Crea un oggetto incorporato dal contenuto di un file denominato.

Sintassi

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
);

Parametri

[in] rclsid

Questo parametro è riservato e deve essere CLSID_NULL.

[in] lpszFileName

Puntatore a una stringa che specifica il percorso completo del file da cui deve essere inizializzato l'oggetto.

[in] riid

Riferimento all'identificatore dell'interfaccia che il chiamante usa in seguito per comunicare con il nuovo oggetto (in genere IID_IOleObject, definito nelle intestazioni OLE come ID interfaccia di IOleObject).

[in] renderopt

Valore dell'enumerazione OLERENDER che indica le funzionalità di disegno o recupero dati memorizzate nella cache locale che l'oggetto appena creato deve avere. Il valore OLERENDER scelto influisce sui valori possibili per il parametro lpFormatEtc .

[in] lpFormatEtc

A seconda di quale flag OLERENDER viene usato come valore di rendering, puntatore a uno dei valori di enumerazione FORMATETC . Per le restrizioni, vedere anche l'enumerazione OLERENDER .

[in] pClientSite

Puntatore a un'istanza di IOleClientSite, l'interfaccia primaria tramite cui l'oggetto richiederà i servizi dal contenitore. Questo parametro può essere NULL.

[in] pStg

Puntatore all'interfaccia IStorage nell'oggetto di archiviazione. Questo parametro non può essere NULL.

[out] ppvObj

Indirizzo della variabile puntatore che riceve il puntatore dell'interfaccia richiesto in riid. Al termine della restituzione, *ppvObj contiene il puntatore dell'interfaccia richiesto nell'oggetto appena creato.

Valore restituito

Questa funzione restituisce S_OK in caso di esito positivo. Altri valori possibili includono quanto segue.

Codice restituito Descrizione
STG_E_FILENOTFOUND
File non associato.
OLE_E_CANT_BINDTOSOURCE
Non è possibile eseguire l'associazione all'origine.
STG_E_MEDIUMFULL
Il supporto è pieno.
DV_E_TYMED
TYMED non valido.
DV_E_LINDEX
LindEX non valido.
DV_E_FORMATETC
Struttura FORMATETC non valida.

Commenti

La funzione OleCreateFromFile crea un nuovo oggetto incorporato dal contenuto di un file denominato. Se progID nel database di registrazione contiene la chiave PackageOnFileDrop, crea un pacchetto. In caso contrario, la funzione chiama la funzione GetClassFile per ottenere il CLSID associato al parametro lpszFileName e quindi crea un oggetto ole 2 incorporato associato a tale CLSID. Il parametro rclsid di OleCreateFromFile verrà sempre ignorato e deve essere impostato su CLSID_NULL.

Come per altre funzioni OleCreateXxx, l'oggetto appena creato non viene visualizzato all'utente per la modifica, che richiede un'operazione DoVerb . Viene usato per implementare operazioni di inserimento dei file.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione ole2.h (include Ole2.h)
Libreria Ole32.lib
DLL Ole32.dll

Vedi anche

GetClassFile