Binden von Kontextzeichenfolgenschlüsseln
Ein Satz von Zeichenfolgenschlüsseln, die mit der IBindCtx::RegisterObjectParam-Methode verwendet werden, um einen Bindungskontext anzugeben.
Dauerhaft | BESCHREIBUNG |
---|---|
|
Eingeführt in Windows XP SP2. Geben Sie diesen Bindungskontext an, damit Clients der Datenquelle die Richtlinie für ausgeblendete Laufwerkbuchstaben außer Kraft setzen und den Zugriff auf die Ansichtsobjekte für Datenquellen auf den blockierten Laufwerken ermöglichen können. Wird mit IShellFolder::BindToObject oder IShellItem::BindToHandler verwendet. Das System unterstützt vom Administrator kontrollierte Richtlinien, die angegebene Laufwerkbuchstaben ausblenden, um zu verhindern, dass Benutzer über Windows Explorer auf diese Laufwerke zugreifen können. Wenn diese Richtlinie aktiv ist, führt das dazu, dass Ansichtsobjekte und andere Handler, die mit der IShellFolder::CreateViewObject-Methode erstellt wurden, fehlschlagen, wenn sie auf Laufwerken aufgerufen werden, die von der Richtlinie blockiert werden. |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, damit die IShellFolder::BindToObject-Methode das vom pbc-Parameter angegebene Objekt verwendet, um das Zielobjekt zu erstellen. In diesem Fall muss das vom Punk-Parameter im IBindCtx::RegisterObjectParam-Aufruf angegebene Objekt die ICreateObject-Schnittstelle implementieren. Wird mit IShellFolder::BindToObject oder IShellItem::BindToHandler verwendet. |
|
In Windows 7 eingeführt. Wird an IShellFolder::P arseDisplayName mit einem FOLDER_ENUM_MODE Wert übergeben, um den Enumerationsmodus des analysierten Elements zu steuern. Der FOLDER_ENUM_MODE Wert wird im Bindungskontext über ein Objekt übergeben, das IObjectWithFolderEnumMode implementiert. Elemente mit unterschiedlichen Enumerationsmodi vergleichen kanonisch (SHCIDS_CANONICALONLY) unterschiedlich, da sie unterschiedliche Sätze von Elementen auflisten. Wenn ein Element den Enumerationsmodus nicht unterstützt (da es kein Ordner ist oder den Enumerationsmodus nicht bereitstellt), wird es im Standardenumerationsmodus erstellt. |
|
In Windows 7 eingeführt. Wird zusammen mit STR_FILE_SYS_BIND_DATA an IShellFolder::P arseDisplayName übergeben. Dies erzwingt eine einfache Analyse und gleichzeitig die Suche nach Desktop.ini Dateien entlang des Pfads, aus dem eine lokalisierte Namenszeichenfolge abgerufen werden soll. Dadurch wird vermieden, dass entlang des Pfads nach Ordnern gesucht wird, was bei einem Ordner, der einen Server oder eine Freigabe darstellt, viel Zeit und Ressourcen in Anspruch nehmen kann. Desktop.ini Dateien werden an einigen Speicherorten zwischengespeichert, sodass es mindestens so effizient ist, wie die Suche nach Ordnerattributen und anschließendes Überprüfen der Desktop.ini, ob dieser Ordner schreibgeschützt werden soll. |
|
Eingeführt in Windows XP SP2. Geben Sie diesen Bindungskontext an, um zu erzwingen, dass eine Ordnerverknüpfung den Link auflöst, der auf das Ziel verweist. Eine Ordnerverknüpfung ist ein Ordnerelement, das auf ein anderes Ordnerelement im selben Namespace verweist und einen Link (Verknüpfung) verwendet, um die IDList des Ziels zu speichern. Der Link wird aufgelöst, um das Ziel zu verfolgen, falls es verschoben oder umbenannt wird. Beispielsweise können der Windows XP-Ordner "Meine Netzwerkplätze" und der Ordner "Windows Vista Computer " Ordnerverknüpfungen enthalten, die mit dem Assistenten zum Hinzufügen von Netzwerkstandorten erstellt wurden. Um die Leistung zu verbessern, löst die IShellFolder::BindToObject-Methode standardmäßig keine Links zum Netzwerkordner auf. Wird mit IShellFolder::BindToObject oder IShellItem::BindToHandler verwendet. |
|
In Windows XP eingeführt. Geben Sie diesen Bindungskontext an, um zu verhindern, dass ein Aufruf der IShellFolder::P arseDisplayName-Methode im Desktopordner relative Pfade relativ zum Desktop behandelt; In diesem Fall schlägt die Analyse fehl, wenn dieser Bindungskontext angegeben wird. |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, um ein IShellItem anzuweisen, das Linkziel nicht aufzulösen, das bei Verwendung der BHID_LinkTargetItem GUID in IShellItem::BindToHandler abgerufen wurde. |
|
In Windows XP eingeführt. Geben Sie diesen Bindungskontext an, um Dateimetadaten für die IShellFolder::P arseDisplayName-Methode bereitzustellen, die verwendet wird, anstatt zu versuchen, die eigentlichen Dateimetadaten abzurufen. Das zugeordnete Objekt muss IFileSystemBindData implementieren und kann optional auch IFileSystemBindData2 implementieren. Standardmäßig überprüft die IShellFolder::P arseDisplayName-Methode , ob die Datei vorhanden ist, und verwendet die tatsächlichen Metadaten der Datei, um die ID-Liste aufzufüllen. |
|
In Windows 8.1 eingeführt. Geben Sie diesen Bindungskontext an, um anzugeben, dass die im STR_FILE_SYS_BIND_DATA Bindungskontext bereitgestellten Daten verwendet werden sollen, um eine ItemID-Liste im Windows 7-Format zu erstellen." |
|
In Windows 7 eingeführt. Geben Sie diesen Bindungskontext an, wenn der Handler im selben Thread wie die Benutzeroberfläche abgerufen wird. Alle speicherintensiven Aktivitäten, z. B. solche, die den Datenträger- oder Netzwerkzugriff betreffen, sollten vermieden werden. |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, wenn Sie einen IPropertySetStorage - oder IPropertyStore-Handler anfordern. Dieser Wert wird mit IShellFolder::BindToObject verwendet. Weitere Informationen finden Sie im Flag GPS_BESTEFFORT . |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, wenn Sie einen IPropertySetStorage - oder IPropertyStore-Handler anfordern. Dieser Wert wird mit IShellFolder::BindToObject verwendet. Weitere Informationen finden Sie unter GPS_DELAYCREATION Flag. |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, wenn Sie einen IPropertySetStorage - oder IPropertyStore-Handler anfordern. Dieser Wert wird mit IShellFolder::BindToObject verwendet. Weitere Informationen finden Sie im Flag GPS_FASTPROPERTIESONLY . |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, wenn Sie einen IPropertySetStorage - oder IPropertyStore-Handler anfordern. Dieser Wert wird mit IShellFolder::BindToObject verwendet. Weitere Informationen finden Sie unter GPS_HANDLERPROPERTIESONLY-Flag . |
|
In Windows 7 eingeführt. Geben Sie diesen Bindungskontext an, wenn Sie einen IPropertySetStorage - oder IPropertyStore-Handler anfordern. Dieser Wert wird mit IShellFolder::BindToObject verwendet. Weitere Informationen finden Sie im Flag GPS_NO_OPLOCK . |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, wenn Sie einen IPropertySetStorage - oder IPropertyStore-Handler anfordern. Dieser Wert wird mit IShellFolder::BindToObject verwendet. Weitere Informationen finden Sie unter GPS_OPENSLOWITEM Flag. |
|
Nur Windows Vista. Geben Sie diesen Bindungskontext an, um einen Aufruf der IShellFolder::BindToObject-Methode zu bewirken, die die IFilter-Schnittstelle für ein Dateisystemobjekt anfordert, einen Textfilter zurückzugeben, wenn kein anderer Filter verfügbar ist. Dieser Wert ist ab Windows 7 nicht definiert. |
|
Nur Windows Vista. Geben Sie diesen Bindungskontext an, um einen Aufruf der IShellFolder::BindToObject-Methode zu verursachen, die die IFilter-Schnittstelle für ein Dateisystemobjekt anfordert, keinen Fallbackfilter zurückzugeben, wenn kein registrierter Filter gefunden wurde. |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, um das Laden des Verlaufs aus einem Stream für eine interne Navigation zu ermöglichen, wenn die IPersistHistory::LoadHistory-Methode aufgerufen wird. Eine interne Navigation ist eine Navigation innerhalb derselben Ansicht. |
|
In Windows 7 eingeführt. Geben Sie diesen Bindungskontext mit STR_PARSE_PREFER_FOLDER_BROWSING an, wenn der Client möchte, dass die Internet Shell-Ordnerhandler eine IDList für eine gültige URL generieren, wenn für diese URL kein Ordner vom Typ DAV erstellt werden kann. Die URL ist nicht vorhanden. nur die Syntax ist überprüft und verfügt über einen registrierten Protokollhandler. |
|
In Windows 7 eingeführt. Geben Sie diesen Bindungskontext an, um Implementierungen von IShellFolder::P arseDisplayName und IPersistFolder3::InitializeEx anzuweisen, speicherintensive Hilfsobjekte zwischenzuspeichern, die über Instanziierungen von Shellelementen hinweg vorhanden sein können, anstatt diese Objekte bei jeder Erstellung eines Shellelements neu zu erstellen. Das zugeordnete Objekt ist ein weiteres Bindungskontextobjekt, das zunächst leer ist. Dies sollte zu einem separaten Bindungskontextobjekt führen, auf das über IBindCtx::GetObjectParam oder IBindCtx::Register.ObjectParam zugegriffen wird. Ein Aufrufer muss sich für dieses Verhalten entscheiden, indem er diesen Bindungskontextparameter beim Aufrufen von SHCreateItemFromParsingName bereitstellt. Auf diese Weise optimieren Sie das Verhalten der Bindung an mehrere Parsingnamen nacheinander. Die Lebensdauer des Bindkontextobjekts sollte mehrere Instanzen von Shellelementen und deren individuellen Bindungskontexten umfassen. |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, damit ungültige Dateinamenzeichen in Dateinamen angezeigt werden können. Standardmäßig lehnt ein Aufruf der IShellFolder::P arseDisplayName-Methode Zeichen ab, die in Dateinamen unzulässig sind. Dieser Bindungskontext ist nur in Verbindung mit dem STR_FILE_SYS_BIND_DATA Bindungskontext sinnvoll. |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, um einen Aufruf der IShellFolder::P arseDisplayName-Methode im Ordner Desktop zum Analysieren von URLs zu aktivieren. Wenn dieser Bindungskontext angegeben wird, wird STR_PARSE_PREFER_WEB_BROWSING überschrieben. |
|
In Windows 7 eingeführt. Geben Sie diesen Bindungskontext an, um die Implementierung von IShellFolder::P arseDisplayName einer Datenquelle anzuweisen, um das Verhalten von SHCreateItemFromParsingName zu optimieren. Normalerweise führt SHCreateItemFromParsingName zwei Bindungsvorgänge für den zu analysierenden Namen aus: einen bis und einen für IShellFolder::P arseDisplayName und einen zum Erstellen des Shellelements. Wenn der STR_PARSE_AND_CREATE_ITEM Bindungskontext unterstützt wird, wird die zweite Bindung vermieden, indem das Shellelement während der IShellFolder::P ArseDisplayName-Bindung erstellt und das Shellelement über IParseAndCreateItem::SetItem gespeichert wird. SHCreateItemFromParsingName verwendet dann das gespeicherte Shellelement, anstatt eines zu erstellen. Dieser Parameter gilt für das letzte Element des Namens, das analysiert wird. Für instance gelten die Daten im Namen "C:\Folder1\File.txt" für File.txt. |
|
Nur Windows Vista. Geben Sie an, dass beim Analysieren einer URL für diesen Bindungskontext nicht erforderlich sein soll, dass die URL vorhanden ist, bevor eine IDList für sie generiert wird. Geben Sie diesen Bindungskontext zusammen mit STR_PARSE_PREFER_FOLDER_BROWSING an, wenn der Client wünscht, dass die Internet Shell-Ordnerhandler eine IDList für die URL generieren, wenn für die angegebene URL kein DAV-Ordner erstellt werden kann. |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, um das ursprüngliche Element zu übergeben, das erneut analysiert wird, wenn dieses Element als IShellItem-Objekt gespeichert wird, das auch die IParentAndItem-Schnittstelle implementiert. Vor Windows 7 wurde dieser Wert nicht in einer Headerdatei definiert. Sie kann vom Aufrufer definiert oder als Zeichenfolgenwert von L"ParseOriginalItem" übergeben werden. Ab Windows 7 wird der Wert in Shlobj.h definiert. Beachten Sie, dass dies ein anderer Header als die anderen STR-Konstanten ist. |
|
In Windows XP eingeführt. Geben Sie diesen Bindungskontext an, um einen Aufruf der IShellFolder::P arseDisplayName-Methode im Ordner Desktop zu aktivieren, um URLs so zu analysieren, als wären sie Ordner. Verwenden Sie diesen Bindungskontext, um eine Bindung an einen WebDAV-Server zu erstellen. |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, um einen Aufruf der IShellFolder::P arseDisplayName-Methode im Desktopordnerformular zu verhindern, das URLs analysiert. Dieser Bindungskontext kann von STR_PARSE_ALLOW_INTERNET_SHELL_FOLDERS überschrieben werden. |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, um den standardmäßigen Eigenschaftenspeicher außer Kraft zu setzen, der von der IShellFolder::P arseDisplayName-Methode verwendet wird, und verwenden Sie stattdessen den eigenschaftenspeicher, der als bind-Parameter angegeben ist. Gilt für Stellvertretungsordner. |
|
Eingeführt in Windows XP SP2. Geben Sie diesen Bindungskontext an, um einen Aufruf der IShellFolder::P arseDisplayName-Methode im Ordner Desktop zu aktivieren, um die Präfixnotation "shell:" für den Zugriff auf Dateien zu verwenden. |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, um einen Aufruf der IShellFolder::P arseDisplayName-Methode zum Anzeigen des Netzwerk-Diagnose-Dialogfelds zu veranlassen, wenn die Analyse eines Netzwerkpfads fehlschlägt. |
|
In Windows Vista eingeführt. Geben Sie diesen Bindungskontext an, um einen Aufruf der IShellFolder::P arseDisplayName-Methode zu verursachen, um die Überprüfung des Netzwerkfreigabecaches zu überspringen und den Netzwerkserver direkt zu kontaktieren. Informationen zu Netzwerkfreigaben werden zur Verbesserung der Leistung zwischengespeichert, und IShellFolder::P arseDisplayName überprüft diesen Cache standardmäßig. |
|
In Windows XP eingeführt. Geben Sie diesen Bindungskontext an, um analysierte Eigenschaften an die IShellFolder::P arseDisplayName-Methode für einen Delegatennamespace zu übergeben. Der Namespace kann die übergebenen Eigenschaften verwenden, anstatt zu versuchen, den Namen selbst zu analysieren. |
|
Nur Windows Vista. Ein Analysebindungskontext, der verwendet wird, um eine Reihe von Eigenschaften und den Namen des Elements beim Aufrufen von IShellFolder::P arseDisplayName zu übergeben. Das -Objekt im Bindungskontext implementiert IPropertyStore und wird durch Aufrufen von IBindCtx::GetObjectParam abgerufen. DBFolder ist eine Shell-Datenquelle, die Elemente in Suchergebnissen und abfragebasierten Sichten darstellt. DBFolder ruft diese Elemente durch Abfragen des Windows Search-Systems ab. Elemente in den Suchergebnissen werden durch ein Protokollschema identifiziert, z. B. "file:" oder "mapi:". DBFolder stellt das Verhalten für diese Elemente bereit, indem es an Shell-Datenquellen delegiert, die für diese Protokolle erstellt werden. Weitere Informationen finden Sie unter Entwickeln von Protokollhandler-Add-Ins . Wenn DBFolder seinen Analysevorgang an die Shell-Datenquellen delegiert, die Windows Search-Protokolle unterstützen, bietet dieser Bindungskontext Zugriff auf Werte, die im Abfrageergebnis für dieses Element zurückgegeben wurden. Hierzu gehören folgende Elemente:
Dieser Bindungskontext kann auch verwendet werden, um ein DBFolder-Element zu analysieren, wenn ein Client über einen Satz von Eigenschaften verfügt, die das Element definieren. In diesem Fall sollte ein leerer Name an IShellFolder::P arseDisplayName übergeben werden. Vor Windows 7 wurde dieser Wert nicht in einer Headerdatei definiert. Sie kann vom Aufrufer definiert oder als Zeichenfolgenwert übergeben werden: L"ParseWithProperties" . Ab Windows 7 wird der Wert in Shlobj.h definiert. Beachten Sie, dass dies ein anderer Header ist als der, in dem die anderen STR-Konstanten definiert sind. |
|
In Windows 8 eingeführt. Geben Sie diesen Bindungskontext an, um anzugeben, dass der Bindkontextparameter ein Eigenschaftenbehälter (IPropertyBag) ist, der zum Übergeben von VARIANT-Werten im Bindungskontext verwendet wird. Weitere Details finden Sie im Abschnitt Hinweise. |
STR_SKIP_BINDING_CLSID |
In Windows XP eingeführt. Geben Sie diesen Bindungskontext an, damit Aufrufe der Methoden IShellFolder::P arseDisplayName oder IShellFolder::BindToObject beim Analysieren oder Binden eine bestimmte Shell-Namespaceerweiterung ignorieren. Die CLSID des zu ignorierenden Namespace wird von der IPersist::GetClassID-Methode des bind-Parameters bereitgestellt. Hinweis: Dieser Wert wurde in Windows 2000 SP3 eingeführt und wurde in Shlobj.h bis Windows XP definiert, als er zu Shobjidl.h verschoben wurde. |
|
Wird nicht verwendet. |
Bemerkungen
Bindungskontexte werden verwendet, um optionale Parameter an Funktionen zu übergeben, die über einen IBindCtx*-Parameter verfügen. Diese Parameter werden als COM-Objekte ausgedrückt und können Schnittstellen implementieren, die zum Modellieren der Parameterdaten verwendet werden. Einige Bindungskontexte stellen einen booleschen Wert dar, wobei TRUE ein Objekt angibt, das nur IUnknown implementiert, und FALSE gibt an, dass kein Objekt vorhanden ist.
IShellFolder::P arseDisplayName, IShellFolder::BindToObject und IShellItem::BindToHandler verwenden einen Bindungskontext, und Sie können diese Parameter über diesen Bindungskontext übergeben.
Einige Bindungskontexte sind spezifisch für bestimmte Datenquellenimplementierungen oder Handlertypen.
Bindungskontextparameter werden für die Verwendung mit einer bestimmten Funktion oder Methode definiert.
Wenn Sie einen Eigenschaftenspeicher über IShellFolder anfordern, können Sie die Entsprechung von GPS_DEFAULT angeben, indem Sie einen IBindCtx-Parameter null übergeben. Sie können auch die Entsprechung von GPS_READWRITE angeben, indem Sie einen Modus von STGM_READWRITE | STGM_EXCLUSIVE im Bindungskontext.
Der vom STR_PROPERTYBAG_PARAM Bindkontextobjekt angegebene Eigenschaftenbehälter enthält zusätzliche Werte, auf die Sie mit den Methoden IPropertyBag::Read und IPropertyBag::Write zugreifen können.
Eigenschaftenname | type | BESCHREIBUNG |
---|---|---|
STR_ENUM_ITEMS_FLAGS | VT_UI4 | In Windows 8 eingeführt. Gibt einen SHCONTF-Wert an, der an IShellFolder::EnumObjects übergeben werden soll, wenn Sie IShellItem::BindToHandler mit BHID_EnumItems aufrufen. |
STR_PARSE_EXPLICIT_ASSOCIATION_SUCCESSFUL | VT_BOOL | In Windows 7 eingeführt. Die IShellFolder::P arseDisplayName-Methode legt diese Eigenschaft fest, um dem Aufrufer mitzuteilen, dass die zurückgegebene IDList an die progID gebunden wurde, die mit STR_PARSE_WITH_EXPLICIT_PROGID oder der mit STR_PARSE_WITH_EXPLICIT_ASSOCAPP angegebenen Anwendung angegeben wurde. Wenn STR_PARSE_EXPLICIT_ASSOCIATION_SUCCESSFUL nicht vorhanden ist, wurde die ProgID oder Anwendung nicht an die IDList gebunden. |
STR_PARSE_WITH_EXPLICIT_ASSOCAPP | VT_BSTR | In Windows 7 eingeführt. Geben Sie diese Eigenschaft an, um einen Aufruf der IShellFolder::P arseDisplayName-Methode zu bewirken, um eine IDList zurückzugeben, die an den Dateitypzuordnungshandler für die Anwendung gebunden ist. |
STR_PARSE_WITH_EXPLICIT_PROGID | VT_BSTR | In Windows 7 eingeführt. Geben Sie diese Eigenschaft an, um durch einen Aufruf der IShellFolder::P arseDisplayName-Methode eine IDList zurückzugeben, die an den Dateizuordnungshandler der bereitgestellten ProgID gebunden ist. |
Ein Beispiel für die Verwendung von Bindungskontextwerten finden Sie im Beispiel zum Analysieren mit Parametern .
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) |
Windows Server 2008 R2 [nur Desktop-Apps] |
Header |
|
IDL |
|