Condividi tramite


Funzione CreateAntiMoniker (objbase.h)

Crea e restituisce un nuovo anti-moniker.

Sintassi

HRESULT CreateAntiMoniker(
  [out] LPMONIKER *ppmk
);

Parametri

[out] ppmk

Indirizzo di una variabile puntatore IMoniker* che riceve il puntatore dell'interfaccia al nuovo anti-moniker. In caso di esito positivo, la funzione ha chiamato AddRef nel moniker anti-moniker e il chiamante è responsabile della chiamata a Release. Quando si verifica un errore, il puntatore anti-moniker è NULL.

Valore restituito

Questa funzione può restituire i valori restituiti standard E_OUTOFMEMORY e S_OK.

Commenti

Si chiamerebbe questa funzione solo se si sta scrivendo la propria classe moniker (implementazione dell'interfaccia IMoniker ). Se si scrive una nuova classe moniker senza struttura interna, è possibile usare CreateAntiMoniker nell'implementazione del metodo IMoniker::Inverse e quindi verificare la presenza di un moniker anti-moniker nell'implementazione di IMoniker::ComposeWith.

Come la directory ".." che funge da inverso a qualsiasi nome di directory appena precedente in un percorso, un anti-moniker funge da moniker inverso di un moniker semplice che lo precede in un moniker composito. Un moniker anti-moniker viene usato come inverso di moniker semplici senza struttura interna. Ad esempio, le implementazioni fornite dal sistema dei monikers, i moniker degli elementi e i moniker puntatore usano tutti i moniker anti-moniker come inverso; di conseguenza, un anti-moniker composto a destra di uno di questi moniker compone in nulla.

Un client moniker (un oggetto che usa un moniker per associare a un altro oggetto) in genere non conosce la classe di un moniker specificato, quindi il client non può essere sicuro che un moniker anti-moniker sia l'inverso. Pertanto, per ottenere l'inverso di un moniker, si chiamerebbe IMoniker::Inverse anziché CreateAntiMoniker.

Per rimuovere l'ultimo pezzo di un moniker composito, eseguire le operazioni seguenti:

  1. Chiamare IMoniker::Enum nel composito, specificando FALSE come primo parametro. In questo modo viene creato un enumeratore che restituisce i moniker del componente in ordine inverso.
  2. Usare l'enumeratore per recuperare l'ultimo pezzo del composito.
  3. Chiamare IMoniker::Inverse su quel moniker . Il moniker restituito da Inverse rimuoverà l'ultimo pezzo del composito.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [app desktop | App UWP]
Server minimo supportato Windows 2000 Server [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione objbase.h
Libreria Ole32.lib
DLL Ole32.dll
Set di API ext-ms-win-com-ole32-l1-1-5 (introdotta in Windows 10 versione 10.0.15063)

Vedi anche

Imoniker