次の方法で共有


AssocQueryStringByKeyA 関数 (shlwapi.h)

指定したキーから始まるファイル関連付け関連の文字列を検索し、レジストリから取得します。

構文

LWSTDAPI AssocQueryStringByKeyA(
  [in]            ASSOCF   flags,
  [in]            ASSOCSTR str,
  [in]            HKEY     hkAssoc,
  [in, optional]  LPCSTR   pszExtra,
  [out, optional] LPSTR    pszOut,
  [in, out]       DWORD    *pcchOut
);

パラメーター

[in] flags

型: ASSOCF

検索を制御するために使用できるフラグ。 ASSOCF 値 任意の組み合わせにすることができますが、含めることができるASSOCF_INIT値は 1 つだけです。

[in] str

型: ASSOCSTR

ASSOCSTR 返される文字列の型を指定する値です。

[in] hkAssoc

型: HKEY

ルート キーとして使用されるキーの HKEY 値。 検索は、このキーの下にのみ表示されます。

[in, optional] pszExtra

型: LPCTSTR

文字列の場所に関する追加情報を含む、省略可能な null で終わる文字列へのポインター。 通常は、開いているなどのシェル動詞 設定されます。 このパラメーターを使用しない場合は、NULLに設定します。

[out, optional] pszOut

型: LPTSTR

要求された文字列を返すために使用される null で終わる文字列へのポインター。 このパラメーターを NULL 設定して、必要なバッファー サイズを取得します。

[in, out] pcchOut

型: DWORD*

エントリ時に、pszOut バッファー内の文字数を指定する値へのポインター。 関数が戻るときに、バッファーに配置された文字数を指します。

ASSOCF_NOTRUNCATE フラグが フラグ で設定されていて、pszOut で指定されたバッファーが小さすぎる場合、関数はE_POINTERを返し、値はバッファーの必要なサイズに設定されます。

pszOut NULL場合、関数はS_FALSEを返し、pcchOut はバッファーの必要なサイズを指します。

戻り値

型: HRESULT

次のような標準の COM エラー値を返します。

エラー 意味
S_OK 成功。
E_POINTER pszOut バッファーが小さすぎて文字列全体を保持できません。
S_FALSE pszOut NULLpcchOut には、必要なバッファー サイズが含まれています。

備考

この関数は、IQueryAssociations インターフェイスのラッパーです。 このインターフェイスを使用するプロセスを簡略化することを目的としています。 ファイル関連付け関数のしくみの詳細については、IQueryAssociationsを参照してください。

手記

shlwapi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして AssocQueryStringByKey を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional、Windows XP [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー shlwapi.h
ライブラリ Shlwapi.lib
DLL Shlwapi.dll (バージョン 5.0 以降)