Freigeben über


IIdentityName-Schnittstelle (shobjidl_core.h)

Macht Methoden verfügbar, um zwei Elemente zu vergleichen, um festzustellen, ob sie identisch sind.

Vererbung

Die IIdentityName-Schnittstelle erbt von der IRelatedItem-Schnittstelle.

Bemerkungen

Diese Schnittstelle stellt nur die Methoden der IRelatedItem-Schnittstelle bereit, von der sie erbt.

Shelldatenquellen, die Elemente an virtuellen Speicherorten präsentieren, z. B. Suchergebnisse, implementieren diese Schnittstelle in der Regel als Handler, um den tatsächlichen Speicherort eines Elements zu ermitteln, um einen Ordner zu finden, der eine Datei enthält. Diese Schnittstelle wird beispielsweise verwendet, um den Befehl Dateispeicherort öffnen in Windows Explorer zu implementieren. Wenn der Benutzer beispielsweise mit der rechten Maustaste auf eine Datei in einer Reihe von Suchergebnissen klickt und dann Dateispeicherort öffnen auswählt, verwendet der Befehl IIdentityName , um das wahre Element abzurufen, und öffnet einen Browser im übergeordneten Element (dem Dateiordner), anstatt das übergeordnete Element zu öffnen (wo sich der Benutzer bereits befindet).

Mehrere Steuerelemente (die Schaltfläche Start auf der Taskleiste und das Namespacesteuerelement) verwenden IIdentityName , um das ursprüngliche Element abzurufen und somit doppelte Elemente zu vermeiden.

Diese Schnittstelle ist bei Alias-ID-Listen (Typ ITEMIDLIST) hilfreich, wie anhand der folgenden beiden Listen veranschaulicht werden kann.

  1. [Computer] [c:] [Benutzer] [pat] [Desktop] [myfile.txt]. Dies ist eine Datei auf dem Desktop des Benutzers und wird von der IShellFolder-Implementierung in Windows Vista verarbeitet, die Dateisysteme verarbeitet.
  2. [Desktop] [myfile.txt]. Die IShellFolder-Implementierung hinter dem Desktop zeigt Dateien vom Desktop des Benutzers, dem gesamten Desktop des Benutzers und einigen speziellen Elementen wie dem Papierkorb an. Wenn Sie aufgefordert werden, über IShellFolder::BindToObject mithilfe von IID IID_IIdentityName zu binden, gibt dieser IShellFolder das zugrunde liegende Element zurück, bei dem es sich um das Dateiordnerelement direkt oben handelt.
Hinweis Um eine Instanz dieses Handlers abzurufen, verwenden Sie IShellFolder::BindToObject mit IID_IIdentityItem oder verwenden Sie IShellItem::BindToHandler mit BHID_SFObject.
 

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile shobjidl_core.h