Função AssocQueryStringA (shlwapi.h)
Pesquisa e recupera uma cadeia de caracteres relacionada à associação de arquivo ou protocolo do registro.
Sintaxe
LWSTDAPI AssocQueryStringA(
[in] ASSOCF flags,
[in] ASSOCSTR str,
[in] LPCSTR pszAssoc,
[in, optional] LPCSTR pszExtra,
[out, optional] LPSTR pszOut,
[in, out] DWORD *pcchOut
);
Parâmetros
[in] flags
Tipo: ASSOCF
Os sinalizadores que podem ser usados para controlar a pesquisa. Pode ser qualquer combinação de valores ASSOCF , exceto que apenas um valor ASSOCF_INIT pode ser incluído.
[in] str
Tipo: ASSOCSTR
O valor ASSOCSTR que especifica o tipo de cadeia de caracteres que deve ser retornado.
[in] pszAssoc
Tipo: LPCTSTR
Um ponteiro para uma cadeia de caracteres terminada em nulo que é usada para determinar a chave raiz. Os quatro tipos de cadeias de caracteres a seguir podem ser usados.
- Extensão de nome de arquivo: uma extensão de nome de arquivo, como .txt.
- CLSID: um GUID CLSID no formato padrão "{GUID}".
- ProgID: ProgID de um aplicativo, como Word. Document.8.
- Nome do executável: o nome do arquivo .exe de um aplicativo. O sinalizador ASSOCF_OPEN_BYEXENAME deve ser definido em sinalizadores.
[in, optional] pszExtra
Tipo: LPCTSTR
Uma cadeia de caracteres terminada em nulo opcional com informações adicionais sobre o local da cadeia de caracteres. Normalmente, ele é definido como um verbo shell, como aberto. Defina esse parâmetro como NULL se ele não for usado.
[out, optional] pszOut
Tipo: LPTSTR
Ponteiro para uma cadeia de caracteres terminada em nulo que, quando essa função retorna com êxito, recebe a cadeia de caracteres solicitada. Defina esse parâmetro como NULL para recuperar o tamanho do buffer necessário.
[in, out] pcchOut
Tipo: DWORD*
Um ponteiro para um valor que, ao chamar a função, é definido como o número de caracteres no buffer pszOut . Quando a função retorna com êxito, o valor é definido como o número de caracteres realmente colocados no buffer.
Se o sinalizador ASSOCF_NOTRUNCATE for definido em sinalizadores e o buffer especificado no pszOut for muito pequeno, a função retornará E_POINTER e o valor será definido como o tamanho necessário do buffer.
Se pszOut for NULL, a função retornará S_FALSE e pcchOut apontará para o tamanho necessário, em caracteres, do buffer.
Retornar valor
Tipo: HRESULT
Retorna um valor de erro COM padrão, incluindo o seguinte:
Erro do | Significado |
---|---|
S_OK | Êxito. |
E_POINTER | O buffer pszOut é muito pequeno para manter a cadeia de caracteres inteira. |
S_FALSE | pszOut é NULL. pcchOut contém o tamanho do buffer necessário. |
Comentários
Essa função é um wrapper para a interface IQueryAssociations . A função AssocQueryString destina-se a simplificar o processo de uso da interface IQueryAssociations .
Depois que um item é selecionado, o host deve decidir qual manipulador de visualização (se houver) está disponível para esse item. Manipuladores de visualização normalmente são registrados em extensões de nome de arquivo ou ProgID, mas alguns manipuladores de visualização são instanciados apenas para itens em pastas de shell específicas (o manipulador de visualização MAPI está associado a todos os itens que vieram da pasta shell MAPI, por exemplo). Portanto, o host deve usar IQueryAssociations para determinar qual manipulador de visualização usar. Para obter mais discussões sobre como as funções de associação de arquivo e protocolo funcionam, consulte IQueryAssociations.
Observação
O cabeçalho shlwapi.h define AssocQueryString como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional, Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | shlwapi.h |
Biblioteca | Shlwapi.lib |
DLL | Shlwapi.dll (versão 5.0 ou posterior) |