Compartilhar via


Função PrivateExtractIconsA (winuser.h)

[Essa função não se destina ao uso geral. Ele pode estar alterado ou indisponível nas versões subsequentes do Windows.]

Cria uma matriz de identificadores para ícones extraídos de um arquivo especificado.

Sintaxe

UINT PrivateExtractIconsA(
  [in]            LPCSTR szFileName,
  [in]            int    nIconIndex,
  [in]            int    cxIcon,
  [in]            int    cyIcon,
  [out, optional] HICON  *phicon,
  [out, optional] UINT   *piconid,
  [in]            UINT   nIcons,
  [in]            UINT   flags
);

Parâmetros

[in] szFileName

Tipo: LPCTSTR

O caminho e o nome do arquivo do qual os ícones devem ser extraídos.

[in] nIconIndex

Tipo: int

O índice baseado em zero do primeiro ícone a ser extraído. Por exemplo, se esse valor for zero, a função extrairá o primeiro ícone no arquivo especificado.

[in] cxIcon

Tipo: int

O tamanho do ícone horizontal desejado. Consulte Observações.

[in] cyIcon

Tipo: int

O tamanho do ícone vertical desejado. Consulte Observações.

[out, optional] phicon

Tipo: HICON*

Um ponteiro para a matriz retornada de identificadores de ícone.

[out, optional] piconid

Tipo: UINT*

Um ponteiro para um identificador de recurso retornado para o ícone que melhor se ajusta ao dispositivo de exibição atual. O identificador retornado será 0xFFFFFFFF se o identificador não estiver disponível para esse formato. O identificador retornado será 0 se o identificador não puder ser obtido de outra forma.

[in] nIcons

Tipo: UINT

O número de ícones a serem extraídos do arquivo. Esse parâmetro só é válido ao extrair de arquivos de .exe e .dll.

[in] flags

Tipo: UINT

Especifica sinalizadores que controlam essa função. Esses sinalizadores são os sinalizadores LR_* usados pela função LoadImage .

Valor retornado

Tipo: UINT

Se o parâmetro phicon for NULL e essa função for bem-sucedida, o valor retornado será o número de ícones no arquivo. Se a função falhar, o valor retornado será 0.

Se o parâmetro phicon não for NULL e a função for bem-sucedida, o valor retornado será o número de ícones extraídos. Caso contrário, o valor retornado será 0xFFFFFFFF se o arquivo não for encontrado.

Comentários

Essa função extrai de arquivos executáveis (.exe), DLL (.dll), ícone (.ico), cursor (.cur), cursor animado (.ani) e bitmap (.bmp). Também há suporte para extrações de executáveis do Windows 3.x de 16 bits (.exe ou .dll).

Os parâmetros cxIcon e cyIcon especificam o tamanho dos ícones a serem extraídos. Dois tamanhos podem ser extraídos colocando o primeiro tamanho no LOWORD do parâmetro e o segundo tamanho no HIWORD. Por exemplo, MAKELONG(24, 48) para os parâmetros cxIcon e cyIcon, extrairia ícones de tamanho de 24 e 48.

Você deve destruir todos os ícones extraídos por PrivateExtractIcons chamando a função DestroyIcon .

Essa função não foi incluída nos cabeçalhos e bibliotecas do SDK até o Windows XP Service Pack 1 (SP1) e o Windows Server 2003. Se você não tiver um arquivo de cabeçalho e uma biblioteca de importação para essa função, poderá chamar a função usando LoadLibrary e GetProcAddress.

Observação

O cabeçalho winuser.h define PrivateExtractIcons 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

   
Cliente mínimo com suporte Windows 2000 Professional [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 winuser.h
Biblioteca User32.lib
DLL User32.dll
Conjunto de APIs ext-ms-win-ntuser-misc-l1-5-1 (introduzido no Windows 10, versão 10.0.14393)

Confira também

Conceitual

Destroyicon

ExtractIcon

ExtractIconEx

Ícones

Referência