次の方法で共有


DEV_QUERY_FLAGS列挙 (devquerydef.h)

デバイス クエリの動作を変更するフラグを指定します。

構文

typedef enum _DEV_QUERY_FLAGS {
  DevQueryFlagNone,
  DevQueryFlagUpdateResults,
  DevQueryFlagAllProperties,
  DevQueryFlagLocalize,
  DevQueryFlagAsyncClose
} DEV_QUERY_FLAGS, *PDEV_QUERY_FLAGS;

定数

 
DevQueryFlagNone
フラグが指定されていない。
DevQueryFlagUpdateResults
既定では、クエリは更新プログラムを受信しません。 ただし、クエリが更新プログラムを登録し、DevQueryFlagUpdateResults フラグを指定した場合、オブジェクトを追加または削除したり、オブジェクトを変更したり、フィルター式に一致したり、フィルター式と一致しなくなったりするシステムの変更が発生しても、その結果セットはコールバックによって引き続き更新されます。
DevQueryFlagAllProperties
オブジェクトに存在するすべての言語のすべてのプロパティを返します。 この動作 変更できるため、DevQueryFlagLocalize を参照してください。
DevQueryFlagLocalize
指定すると、DEVPROP_TYPE_STRING_INDIRECT 型のプロパティは、呼び出し元のスレッドの UI 言語に解決されます。 複数言語のプロパティは、呼び出し元アプリケーションの優先言語で取得されます。

DevQueryFlagAllPropertiesと組み合わせて使用すると、オブジェクトのすべてのプロパティ キーの値が、呼び出し元アプリケーションの優先言語でフェッチされます。
DevQueryFlagAsyncClose
このフラグは、DevCloseObjectQuery 関数の動作を変更します。 指定されている場合は、次の値を使用します。
DevCloseObjectQuery はすぐに返されますが、DevQueryStateClosed 状態の変更を受け取るまで、コールバック関数は引き続き呼び出されます。

DevQueryFlagAsyncClose 指定されていない場合、devCloseObjectQuery は未処理のコールバックが返されるまでブロックされ、DevCloseObjectQuery が返されると、それ以上のコールバックは発生しません。

どちらの場合も、コールバック関数が実装されている DLL で参照が保持され、コールバックを呼び出しながらアンロードされないようにします。

必要条件

要件 価値
ヘッダー devquerydef.h