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:
- 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.
- Usare l'enumeratore per recuperare l'ultimo pezzo del composito.
- 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) |