Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
En pekare identifierar ett objekt som bara kan finnas i aktivt eller körningstillstånd. Detta skiljer sig från andra klasser av monikers, som identifierar objekt som kan finnas i antingen passivt eller aktivt tillstånd.
Anta till exempel att ett program har ett objekt som inte har någon beständig representation. Om en klient i ditt program behöver åtkomst till det objektet kan du normalt skicka en pekare till objektet till klienten. Anta dock att klienten förväntar sig en moniker. Det går inte att identifiera objektet med en filmoniker eftersom det inte lagras i en fil eller med en objektmoniker eftersom det inte finns i ett annat objekt.
I stället kan ditt program skapa en pekaremoniker, som är en moniker som helt enkelt innehåller en pekare internt, och skicka den till klienten. Klienten kan behandla denna moniker som alla andra. Men när klienten anropar IMoniker::BindToObject på pekarens moniker kontrollerar monikerkoden inte den objekttabell som körs (ROT) eller läser in något från lagringen. I stället anropar monikerkoden helt enkelt QueryInterface på pekaren som lagras i monikern.
Pekaremonikers tillåter att objekt som bara finns i aktivt tillstånd eller körs deltar i monikeråtgärder och används av monikerklienter. En viktig skillnad mellan pekaremonikers och andra klasser av monikers är att pekare monikers inte kan sparas till beständig lagring. Om du gör det returneras ett fel när du anropar metoden IMoniker::Spara. Det innebär att pekare monikers endast är användbara i specialiserade situationer. Du kan använda funktionen CreatePointerMoniker om du behöver använda en pekaremoniker.
Relaterade ämnen