Share via


コンテキスト文字列キーのバインド

バインド コンテキストを指定するために IBindCtx::RegisterObjectParam メソッドで使用される文字列キーのセット。

常時 説明
STR_AVOID_DRIVE_RESTRICTION_POLICY
Windows XP SP2 で導入されました。 このバインド コンテキストを指定して、データ ソースのクライアントが非表示のドライブ文字ポリシーをオーバーライドし、ブロックされているドライブ上のデータ ソースのビュー オブジェクトへのアクセスを有効にします。
IShellFolder::BindToObject または IShellItem::BindToHandler と共に使用されます。
システムは、指定されたドライブ文字を非表示にして、ユーザーが Windows エクスプローラー経由でそれらのドライブにアクセスできないようにする、管理者が制御するポリシーをサポートしています。 このポリシーがアクティブな場合、ポリシーによってブロックされているドライブで呼び出されると、 IShellFolder::CreateViewObject メソッドを使用して作成されたビュー オブジェクトやその他のハンドラーが失敗します。
STR_BIND_DELEGATE_CREATE_OBJECT
Windows Vista で導入されました。 このバインド コンテキストを指定して、IShellFolder::BindToObject メソッドで pbc パラメーターで指定されたオブジェクトを使用してターゲット オブジェクトを作成します。この場合、IBindCtx::RegisterObjectParam 呼び出しで punk パラメーターで指定されたオブジェクトは、ICreateObject インターフェイスを実装する必要があります。
IShellFolder::BindToObject または IShellItem::BindToHandler と共に使用されます。
STR_BIND_FOLDER_ENUM_MODE
Windows 7 で導入されましたIShellFolder::P arseDisplayNameFOLDER_ENUM_MODE値を渡して、解析されたアイテムの列挙モードを制御します。 FOLDER_ENUM_MODE値は、IObjectWithFolderEnumMode を実装するオブジェクトを介してバインド コンテキストで渡されます。
列挙モードが異なるアイテムは、異なるセットのアイテムを列挙するため、正規 (SHCIDS_CANONICALONLY) の比較が異なります。
アイテムが列挙モードをサポートしていない場合 (フォルダーではないか、列挙モードを提供していないため)、既定の列挙モードで作成されます。
STR_BIND_FOLDERS_READ_ONLY
Windows 7 で導入されましたIShellFolder::P arseDisplayNameSTR_FILE_SYS_BIND_DATAと共に渡されます。 これにより、単純な解析が強制され、ローカライズされた名前文字列を取得するパスに沿ってファイル Desktop.ini プローブも実行されます。 これにより、パスに沿ったフォルダーのプローブが回避されます。これは、サーバーまたは共有を表すフォルダーの場合、時間とリソースが長くかかる可能性があります。 Desktop.ini ファイルは一部の場所にキャッシュされるため、少なくともフォルダー属性のプローブと同じくらい効率的で、そのフォルダーが読み取り専用になる必要がある場合は Desktop.ini をプローブします。
STR_BIND_FORCE_FOLDER_SHORTCUT_RESOLVE
Windows XP SP2 で導入されました。 このバインド コンテキストを指定して、ターゲットを指すリンクを強制的に解決するフォルダー ショートカットを指定します。
フォルダー ショートカットは、リンク (ショートカット) を使用してターゲットの IDList を保持する、同じ名前空間内の別のフォルダーアイテムを指すフォルダーアイテムです。 リンクが移動または名前変更された場合に、ターゲットを追跡するように解決されます。 たとえば、Windows XP の [マイ ネットワークの場所 ] フォルダーと [Windows Vista コンピューター] フォルダーには、[ ネットワークの場所の追加] ウィザードで作成されたフォルダー ショートカットを含めることができます。 パフォーマンスを向上させるために、 IShellFolder::BindToObject メソッドは既定でネットワーク フォルダーへのリンクを解決しません。
IShellFolder::BindToObject または IShellItem::BindToHandler と共に使用されます。
STR_DONT_PARSE_RELATIVE
Windows XP で導入されました。 このバインド コンテキストを指定して、デスクトップ フォルダーの IShellFolder::P arseDisplayName メソッドの呼び出しが、 相対 パスをデスクトップに対する相対パスとして扱わないようにします。このような場合、このバインド コンテキストが指定されると解析は失敗します。
STR_DONT_RESOLVE_LINK
Windows Vista で導入されました。 このバインド コンテキストを指定して、IShellItem::BindToHandlerBHID_LinkTargetItem GUID を使用するときに取得されたリンク ターゲットを解決しないように IShellItem に指示します。
STR_FILE_SYS_BIND_DATA
Windows XP で導入されましたIShellFolder::P arseDisplayName メソッドにファイル メタデータを提供するには、このバインド コンテキストを指定します。これは、実際のファイル メタデータの取得を試みる代わりに使用されます。 関連付けられているオブジェクトは IFileSystemBindData を 実装する必要があり、必要に応じて IFileSystemBindData2 を実装することもできます。 既定では、 IShellFolder::P arseDisplayName メソッドは、ファイルが存在することを確認し、ファイルの実際のメタデータを使用して ID リストを設定します。
STR_FILE_SYS_BIND_DATA_WIN7_FORMAT
Windows 8.1で導入されました。 このバインド コンテキストを指定して、 STR_FILE_SYS_BIND_DATA バインド コンテキストで提供されるデータを使用して、Windows 7 形式の ItemID リストを作成する必要があることを示します。
STR_GET_ASYNC_HANDLER
Windows 7 で導入されました。 ハンドラーが UI と同じスレッドで取得されるときに、このバインド コンテキストを指定します。 ディスクやネットワーク アクセスを伴うアクティビティなど、メモリを集中的に消費するアクティビティは避ける必要があります。
STR_GPS_BESTEFFORT
Windows Vista で導入されましたIPropertySetStorage または IPropertyStore ハンドラーを要求するときに、このバインド コンテキスト指定します。 この値は、 IShellFolder::BindToObject と共に使用されます。 詳細については、 GPS_BESTEFFORT フラグを参照してください。
STR_GPS_DELAYCREATION
Windows Vista で導入されましたIPropertySetStorage または IPropertyStore ハンドラーを要求するときに、このバインド コンテキスト指定します。 この値は、 IShellFolder::BindToObject と共に使用されます。 詳細については、「 GPS_DELAYCREATION フラグ」を参照してください。
STR_GPS_FASTPROPERTIESONLY
Windows Vista で導入されましたIPropertySetStorage または IPropertyStore ハンドラーを要求するときに、このバインド コンテキスト指定します。 この値は、 IShellFolder::BindToObject と共に使用されます。 詳細については、 GPS_FASTPROPERTIESONLY フラグを参照してください。
STR_GPS_HANDLERPROPERTIESONLY
Windows Vista で導入されましたIPropertySetStorage または IPropertyStore ハンドラーを要求するときに、このバインド コンテキスト指定します。 この値は、 IShellFolder::BindToObject と共に使用されます。 詳細については、 GPS_HANDLERPROPERTIESONLY フラグを参照してください。
STR_GPS_NO_OPLOCK
Windows 7 で導入されましたIPropertySetStorage または IPropertyStore ハンドラーを要求するときに、このバインド コンテキスト指定します。 この値は、 IShellFolder::BindToObject と共に使用されます。 詳細については、 GPS_NO_OPLOCK フラグを参照してください。
STR_GPS_OPENSLOWITEM
Windows Vista で導入されましたIPropertySetStorage または IPropertyStore ハンドラーを要求するときに、このバインド コンテキスト指定します。 この値は、 IShellFolder::BindToObject と共に使用されます。 詳細については、 GPS_OPENSLOWITEM フラグを参照してください。
STR_IFILTER_FORCE_TEXT_FILTER_FALLBACK
Windows Vista のみ。 このバインド コンテキストを指定すると、 IShellFolder::BindToObject メソッドが呼び出され、他のフィルターが使用できない場合にテキスト フィルターを返すファイル システム オブジェクトの IFilter インターフェイスが要求されます。 この値は、Windows 7 の時点では定義されていません。
STR_IFILTER_LOAD_DEFINED_FILTER
Windows Vista のみ。 このバインド コンテキストを指定すると、 IShellFolder::BindToObject メソッドが呼び出され、登録されたフィルターが見つからない場合に、ファイル システム オブジェクトの IFilter インターフェイスにフォールバック フィルターが返されないように要求されます。
STR_INTERNAL_NAVIGATE
Windows Vista で導入されましたIPersistHistory::LoadHistory メソッドが呼び出されたときに、内部ナビゲーション用のストリームからの履歴の読み込みを有効にするには、このバインド コンテキストを指定します。 内部ナビゲーションは、同じビュー内のナビゲーションです。
STR_INTERNETFOLDER_PARSE_ONLY_URLMON_BINDABLE
Windows 7 で導入されました。 クライアントが Internet Shell フォルダー ハンドラーで有効な URL の IDList を生成する場合に、その URL に対して DAV 型フォルダーを作成できない場合は、このバインド コンテキストを STR_PARSE_PREFER_FOLDER_BROWSING で指定します。 URL が存在することを確認していません。その構文のみがチェックされ、登録済みのプロトコル ハンドラーがあることを確認します。
STR_ITEM_CACHE_CONTEXT
Windows 7 で導入されました。 このバインド コンテキストを指定して 、IShellFolder::P arseDisplayNameIPersistFolder3::InitializeEx の実装に指示し、シェル項目が作成されるたびにこれらのオブジェクトを再作成するのではなく、シェル項目のインスタンス化全体に存在できるメモリ集約型ヘルパー オブジェクトをキャッシュします。 関連付けられたオブジェクトは、最初は空の別のバインド コンテキスト オブジェクトです。 これにより、IBindCtx::GetObjectParam または IBindCtx::Register.ObjectParam を介してアクセスされる個別のバインド コンテキスト オブジェクトが作成されます。
呼び出し元は 、SHCreateItemFromParsingName を呼び出すときにこのバインド コンテキスト パラメーターを指定して、この動作をオプトインする必要があります。 これにより、複数の解析名へのバインドの動作を連続して最適化できます。 バインド コンテキスト オブジェクトの有効期間は、シェル項目とその個々のバインド コンテキストの複数のインスタンスにまたがる必要があります。
STR_NO_VALIDATE_FILENAME_CHARS
Windows Vista で導入されました。 無効なファイル名文字をファイル名に表示できるようにするには、このバインド コンテキストを指定します。 既定では、 IShellFolder::P arseDisplayName メソッドを呼び出すと、ファイル名に無効な文字が拒否されます。 このバインド コンテキストは、STR_FILE_SYS_BIND_DATAバインド コンテキストと組み合わせてのみ意味があります。
STR_PARSE_ALLOW_INTERNET_SHELL_FOLDERS
Windows Vista で導入されました。 このバインド コンテキストを指定して、デスクトップ フォルダーの IShellFolder::P arseDisplayName メソッドを呼び出して URL を解析できるようにします。 このバインド コンテキストを指定すると、 STR_PARSE_PREFER_WEB_BROWSINGがオーバーライドされます。
STR_PARSE_AND_CREATE_ITEM
Windows 7 で導入されました。 このバインド コンテキストを指定して、データ ソースの IShellFolder::P arseDisplayName の実装を指示し、 SHCreateItemFromParsingName の動作を最適化します。
通常、 SHCreateItemFromParsingName は、解析される名前に対して 2 つのバインド操作を実行します。1 つは から、もう 1 つは IShellFolder::P arseDisplayName に対して、もう 1 つはシェル項目を作成します。 STR_PARSE_AND_CREATE_ITEM バインド コンテキストがサポートされている場合、IShellFolder::P arseDisplayName バインド中にシェル項目を作成し、IParseAndCreateItem::SetItem を介してシェル 項目を格納することで、2 番目のバインドを回避できます。 その後、SHCreateItemFromParsingName は、格納されているシェル項目を作成するのではなく使用します。
このパラメーターは、解析される名前の最後の要素に適用されます。 たとえば、"C:\Folder1\File.txt" という名前では、データは File.txt に適用されます。
STR_PARSE_DONT_REQUIRE_VALIDATED_URLS
Windows Vista のみ。 URL を解析するときに、このバインド コンテキストで IDList を生成する前に URL を存在させる必要がないように指定します。 指定した URL に対 して DAV フォルダーを作成できない場合に、 クライアントが Internet Shell フォルダー ハンドラーで URL の IDList を生成することを望む場合は、このバインド コンテキストをSTR_PARSE_PREFER_FOLDER_BROWSINGと共に指定します。
STR_PARSE_PARTIAL_IDLIST
Windows Vista で導入されました。 このバインド コンテキストを指定して、その項目が IParentAndItem インターフェイスを実装する IShellItem オブジェクトとして格納されるときに再解析される元のアイテムを渡します。 Windows 7 より前では、この値はヘッダー ファイルで定義されていませんでした。 呼び出し元によって定義するか、 L"ParseOriginalItem" の文字列値として渡すことができます。 Windows 7 の時点で、値は Shlobj.h で定義されています。 これは他の STR 定数とは異なるヘッダーであることに注意してください。
STR_PARSE_PREFER_FOLDER_BROWSING
Windows XP で導入されました。 このバインド コンテキストを指定して、デスクトップ フォルダーの IShellFolder::P arseDisplayName メソッドを呼び出して、フォルダーであるかのように URL を解析できるようにします。 このバインド コンテキストを使用して、WebDAV サーバーにバインドします。
STR_PARSE_PREFER_WEB_BROWSING
Windows Vista で導入されました。 このバインド コンテキストを指定して、デスクトップ フォルダー フォームの解析 URL で IShellFolder::P arseDisplayName メソッドを呼び出さないようにします。 このバインド コンテキストは、 STR_PARSE_ALLOW_INTERNET_SHELL_FOLDERSによってオーバーライドできます。
STR_PARSE_PROPERTYSTORE
Windows Vista で導入されました。 このバインド コンテキストを指定して 、IShellFolder::P arseDisplayName メソッドで使用される既定のプロパティ ストアをオーバーライドし、代わりにバインド パラメーターとして指定されたプロパティ ストアを使用します。 代理人フォルダーに適用されます。
STR_PARSE_SHELL_PROTOCOL_TO_FILE_OBJECTS
Windows XP SP2 で導入されました。 このバインド コンテキストを指定して、デスクトップ フォルダーの IShellFolder::P arseDisplayName メソッドを呼び出して、"shell:" プレフィックス表記を使用してファイルにアクセスできるようにします。
STR_PARSE_SHOW_NET_DIAGNOSTICS_UI
Windows Vista で導入されました。 このバインド コンテキストを指定すると、IShellFolder::P arseDisplayName メソッドが呼び出され、ネットワーク パスの解析が失敗した場合にネットワーク 診断 ダイアログが表示されます。
STR_PARSE_SKIP_NET_CACHE
Windows Vista で導入されました。 このバインド コンテキストを指定して 、IShellFolder::P arseDisplayName メソッドを呼び出して、ネットワーク共有キャッシュのチェックをスキップし、ネットワーク サーバーに直接接続します。 ネットワーク共有に関する情報は、パフォーマンスを向上させるためにキャッシュされ、 IShellFolder::P arseDisplayName はこのキャッシュを既定でチェックします。
STR_PARSE_TRANSLATE_ALIASES
Windows XP で導入されました。 このバインド コンテキストを指定して、解析されたプロパティをデリゲート名前空間の IShellFolder::P arseDisplayName メソッドに渡します。 名前空間では、名前自体を解析する代わりに、渡されたプロパティを使用できます。
STR_PARSE_WITH_PROPERTIES
Windows Vista のみ。 IShellFolder::P arseDisplayName を呼び出すときに一連のプロパティと項目の名前を渡すために使用される解析バインド コンテキスト。 バインド コンテキストの オブジェクトは IPropertyStore を 実装し、 IBindCtx::GetObjectParam を呼び出すことによって取得されます。
DBFolder は、検索結果とクエリベースのビューの項目を表すシェル データ ソースです。 DBFolder は、Windows Search システムに対してクエリを実行して、これらの項目を取得します。 検索結果内の項目は、"file:" や "mapi:" などのプロトコル スキームを使用して識別されます。 DBFolder は、これらのプロトコル用に作成されたシェル データ ソースに委任することで、これらの項目の動作を提供します。 詳細については、 プロトコル ハンドラー アドインの開発に関する ページを参照してください。
DBFolder が解析操作を Windows Search プロトコルをサポートするシェル データ ソースに委任すると、このバインド コンテキストは、そのアイテムのクエリ結果で返された値へのアクセスを提供します。 次に例を示します。

クライアントに項目を定義する一連のプロパティがある場合は、このバインド コンテキストを使用して DBFolder アイテムを解析することもできます。 この場合、空の名前を IShellFolder::P arseDisplayName に渡す必要があります。
Windows 7 より前では、この値はヘッダー ファイルで定義されていませんでした。 呼び出し元によって定義するか、文字列値 として渡すことができます。 L"ParseWithProperties" Windows 7 の時点で、値は Shlobj.h で定義されています。 これは、他の STR 定数が定義されているヘッダーとは異なるヘッダーであることに注意してください。
STR_PROPERTYBAG_PARAM
Windows 8 で導入されました。 バインド コンテキスト パラメーターが、バインド コンテキストで VARIANT 値を渡すために使用されるプロパティ バッグ (IPropertyBag) であることを示すには、このバインド コンテキストを指定します。 詳細については、「解説」セクションを参照してください。
STR_SKIP_BINDING_CLSID
Windows XP で導入されました。 このバインド コンテキストを指定して、 IShellFolder::P arseDisplayName メソッドまたは IShellFolder::BindToObject メソッドを呼び出して、解析またはバインド時に特定のシェル名前空間拡張を無視します。 無視する名前空間の CLSID は、バインド パラメーターの IPersist::GetClassID メソッドによって提供されます。
メモ: Windows 2000 SP3 で導入されたこの値は、Shobjidl.h に移動されたとき、Windows XP まで Shlobj.h で定義されました。
STR_TRACK_CLSID
使用しません。

解説

バインド コンテキストは、IBindCtx* パラメーターを持つ関数に省略可能なパラメーターを渡すために使用されます。 これらのパラメーターは COM オブジェクトとして表され、パラメーター データのモデル化に使用されるインターフェイスを実装する場合があります。 一部のバインド コンテキストはブール値を表し、 TRUEIUnknown のみを実装するオブジェクトを示し、FALSE はオブジェクトが存在しなかったことを示します。

IShellFolder::P arseDisplayNameIShellFolder::BindToObjectおよび IShellItem::BindToHandler はバインド コンテキストを受け取り、そのバインド コンテキストを介してパラメーターを渡すことができます。

一部のバインド コンテキストは、特定のデータ ソースの実装またはハンドラーの型に固有です。

バインド コンテキスト パラメーターは、特定の関数またはメソッドで使用するために定義されます。

IShellFolder を使用してプロパティ ストアを要求する場合は、null IBindCtx パラメーターを渡すことで、GPS_DEFAULTに相当するものを指定できます。 STGM_READWRITE | のモードを渡すことで、GPS_READWRITEと同等の値を指定することもできます。バインド コンテキストでSTGM_EXCLUSIVEします。

STR_PROPERTYBAG_PARAM バインド コンテキスト オブジェクトによって指定されたプロパティ バッグには、IPropertyBag::Read メソッドと IPropertyBag::Write メソッドでアクセスできる追加の値が含まれています。

プロパティ名 Type 説明
STR_ENUM_ITEMS_FLAGS VT_UI4 Windows 8 で導入されましたBHID_EnumItemsで IShellItem::BindToHandler を呼び出すときに IShellFolder::EnumObjects に渡される SHCONTF 値を指定します。
STR_PARSE_EXPLICIT_ASSOCIATION_SUCCESSFUL VT_BOOL Windows 7 で導入されましたIShellFolder::P arseDisplayName メソッドは、返された IDList が STR_PARSE_WITH_EXPLICIT_PROGID で指定された ProgID または STR_PARSE_WITH_EXPLICIT_ASSOCAPP で指定されたアプリケーションにバインドされたことを呼び出し元に伝えるために、このプロパティ設定します。 STR_PARSE_EXPLICIT_ASSOCIATION_SUCCESSFULが存在しない場合、ProgID またはアプリケーションは IDList にバインドされませんでした。
STR_PARSE_WITH_EXPLICIT_ASSOCAPP VT_BSTR Windows 7 で導入されましたIShellFolder::P arseDisplayName メソッドを呼び出して、アプリケーションのファイル型関連付けハンドラーにバインドされた IDList を返すには、このプロパティを指定します。
STR_PARSE_WITH_EXPLICIT_PROGID VT_BSTR Windows 7 で導入されました。 このプロパティを指定すると、 IShellFolder::P arseDisplayName メソッドが呼び出され、指定された ProgID のファイル関連付けハンドラーにバインドされた IDList が返されます。

 

バインド コンテキスト値の使用例については、「パラメーターを使用した 解析のサンプル 」を参照してください。

要件

要件
サポートされている最小のクライアント
Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー
Windows Server 2008 R2 [デスクトップ アプリのみ]
Header
Shobjidl.h
IDL
Shobjidl.idl