Funzione AssocQueryStringByKeyA (shlwapi.h)

Cerca e recupera una stringa correlata all'associazione di file dal Registro di sistema a partire da una chiave specificata.

Sintassi

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

Parametri

[in] flags

Tipo: ASSOCF

Flag che possono essere utilizzati per controllare la ricerca. Può essere qualsiasi combinazione di valori ASSOCF , ad eccezione del fatto che è possibile includere un solo valore ASSOCF_INIT.

[in] str

Tipo: ASSOCSTR

Valore ASSOCSTR che specifica il tipo di stringa da restituire.

[in] hkAssoc

Tipo: HKEY

Valore HKEY della chiave che verrà usata come chiave radice. La ricerca appare solo sotto questa chiave.

[in, optional] pszExtra

Tipo: LPCTSTR

Puntatore a una stringa facoltativa con terminazione Null con informazioni aggiuntive sulla posizione della stringa. In genere è impostato su un verbo shell, ad esempio aperto. Impostare questo parametro su NULL se non viene usato.

[out, optional] pszOut

Tipo: LPTSTR

Puntatore a una stringa con terminazione Null utilizzata per restituire la stringa richiesta. Impostare questo parametro su NULL per recuperare le dimensioni del buffer necessarie.

[in, out] pcchOut

Tipo: DWORD*

Puntatore a un valore che, nella voce, specifica il numero di caratteri nel buffer pszOut . Quando la funzione viene restituita, punta al numero di caratteri inseriti nel buffer.

Se il flag ASSOCF_NOTRUNCATE è impostato nei flag e il buffer specificato in pszOut è troppo piccolo, la funzione restituisce E_POINTER e il valore viene impostato sulle dimensioni necessarie del buffer.

Se pszOut è NULL, la funzione restituisce S_FALSE e pcchOut punta alle dimensioni necessarie del buffer.

Valore restituito

Tipo: HRESULT

Restituisce un valore di errore COM standard, incluso quanto segue:

Errore Significato
S_OK Operazione completata.
E_POINTER Il buffer pszOut è troppo piccolo per contenere l'intera stringa.
S_FALSE pszOut è NULL. pcchOut contiene le dimensioni del buffer necessarie.

Commenti

Questa funzione è un wrapper per l'interfaccia IQueryAssociations . È progettato per semplificare il processo di utilizzo di questa interfaccia. Per altre informazioni sul funzionamento delle funzioni di associazione file, vedere IQueryAssociations.

Nota

L'intestazione shlwapi.h definisce AssocQueryStringByKey come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional, Windows XP [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione shlwapi.h
Libreria Shlwapi.lib
DLL Shlwapi.dll (versione 5.0 o successiva)