Condividi tramite


Funzione OleCreate (ole.h)

Crea un oggetto incorporato identificato da un CLSID. Viene usato in genere per implementare la voce di menu che consente all'utente finale di inserire un nuovo oggetto.

Sintassi

OLESTATUS OleCreate(
  LPCSTR        unnamedParam1,
  LPOLECLIENT   unnamedParam2,
  LPCSTR        unnamedParam3,
  LHCLIENTDOC   unnamedParam4,
  LPCSTR        unnamedParam5,
  LPOLEOBJECT   *unnamedParam6,
  OLEOPT_RENDER unnamedParam7,
  OLECLIPFORMAT unnamedParam8
);

Parametri

unnamedParam1

TBD

unnamedParam2

TBD

unnamedParam3

TBD

unnamedParam4

TBD

unnamedParam5

TBD

unnamedParam6

TBD

unnamedParam7

TBD

unnamedParam8

TBD

Valore restituito

Questa funzione restituisce S_OK in caso di esito positivo e supporta il valore restituito standard E_OUTOFMEMORY.

Codice restituito Descrizione
E_OUTOFMEMORY
Memoria insufficiente per l'operazione.

Commenti

La funzione OleCreate crea un nuovo oggetto incorporato e viene in genere chiamata per implementare la voce di menu Inserisci nuovo oggetto. Quando OleCreate restituisce un risultato, l'oggetto creato è vuoto (non contiene dati), a meno che il rendering non sia OLERENDER_DRAW o OLERENDER_FORMAT e venga caricato. I contenitori in genere chiamano la funzione OleRun o IOleObject::D oVerb per visualizzare l'oggetto per la modifica iniziale.

Il parametro rclsid specifica il CLSID dell'oggetto richiesto. I CLSID degli oggetti registrati vengono archiviati nel Registro di sistema. Quando un utente dell'applicazione seleziona Inserisci oggetto, una casella di selezione consente all'utente di selezionare il tipo di oggetto desiderato da quelli nel Registro di sistema. Quando Viene utilizzato OleCreate per implementare la voce di menu Inserisci oggetto, il CLSID associato all'elemento selezionato viene assegnato al parametro rclsid di OleCreate.

Il parametro riid specifica l'interfaccia che il client userà per comunicare con il nuovo oggetto. Al termine della restituzione, il parametro ppvObject contiene un puntatore all'interfaccia richiesta.

La cache dell'oggetto creato contiene informazioni che consentono una presentazione di un oggetto contenuto all'apertura del contenitore. Le informazioni su cosa deve essere memorizzato nella cache vengono passate nei valori renderopt e pFormatetc . Quando OleCreate viene restituito, la cache dell'oggetto creato non viene necessariamente riempita. Al contrario, la cache viene riempita la prima volta che l'oggetto entra nello stato di esecuzione. Il chiamante può aggiungere un controllo della cache aggiuntivo con una chiamata a IOleCache::Cache dopo la restituzione di OleCreate e prima dell'esecuzione dell'oggetto. Se renderopt è OLERENDER_DRAW o OLERENDER_FORMAT, OleCreate richiede che l'oggetto supporti l'interfaccia IOleCache . Non esiste alcun requisito di questo tipo per qualsiasi altro valore di renderopt.

Se pClientSite non è NULL, OleCreate chiama IOleObject::SetClientSite tramite il puntatore pClientSite . IOleClientSite è l'interfaccia principale in base alla quale un oggetto richiede servizi dal contenitore. Se pClientSite è NULL, è necessario effettuare una chiamata specifica a IOleObject::SetClientSite prima di tentare qualsiasi operazione.

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 ole.h (include Ole2.h)
Libreria Ole32.lib
DLL Ole32.dll

Vedi anche

FORMATETC

Ioleclientsite

Ioleobject

OLERENDER