Compartilhar via


Função GetOpenFileNameA (commdlg.h)

[A partir do Windows Vista, as caixas de diálogo comuns Abrir e Salvar como foram substituídas pelode Diálogo de Item Comum . Recomendamos que você use a API de Diálogo de Item Comum em vez dessas caixas de diálogo da Biblioteca de Caixas de Diálogo Comuns.]

Cria uma caixa de diálogo Abrir que permite que o usuário especifique a unidade, o diretório e o nome de um arquivo ou conjunto de arquivos a serem abertos.

Sintaxe

BOOL GetOpenFileNameA(
  [in, out] LPOPENFILENAMEA unnamedParam1
);

Parâmetros

[in, out] unnamedParam1

Tipo: LPOPENFILENAME

Um ponteiro para uma estrutura OPENFILENAME que contém informações usadas para inicializar a caixa de diálogo. Quando GetOpenFileName retorna, essa estrutura contém informações sobre a seleção de arquivo do usuário.

Valor de retorno

Tipo: BOOL

Se o usuário especificar um nome de arquivo e clicar no botão OK, o valor retornado não será zero. O buffer apontado pelo lpstrFile membro da estrutura OPENFILENAME contém o caminho completo e o nome do arquivo especificados pelo usuário.

Se o usuário cancelar ou fechar a caixa de diálogo Abrir ou ocorrer um erro, o valor retornado será zero. Para obter informações de erro estendidas, chame a função CommDlgExtendedError , que pode retornar um dos valores a seguir.

Observações

A caixa de diálogo Abrir no estilo Explorer fornece recursos de interface do usuário semelhantes ao Windows Explorer. Você pode fornecer um procedimento de gancho de OFNHookProc para uma caixa de diálogo Abrir no estilo Explorer. Para habilitar o procedimento de gancho, defina os sinalizadores OFN_EXPLORER e OFN_ENABLEHOOK no Flags membro da estrutura OPENFILENAME e especifique o endereço do procedimento de gancho no membro lpfnHook do .

O Windows continua a dar suporte à caixa de diálogo Open para aplicativos que desejam manter uma interface do usuário consistente com a interface do usuário de estilo antigo. Para exibir a caixa de diálogo Open de estilo antigo, habilite um procedimento de gancho OFNHookProcOldStyle e verifique se o sinalizador de OFN_EXPLORER não está definido.

Para exibir uma caixa de diálogo que permite ao usuário selecionar um diretório em vez de um arquivo, chame a função SHBrowseForFolder.

Observe que, ao selecionar vários arquivos, o limite total de caracteres para os nomes de arquivo depende da versão da função.

  • ANSI: limite de 32k
  • Unicode: sem restrição

Exemplos

Para obter um exemplo, consulte Abrir um arquivo.

Nota

O cabeçalho commdlg.h define GetOpenFileName como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 2000 Professional [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows 2000 Server [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
cabeçalho commdlg.h (inclua Windows.h)
biblioteca Comdlg32.lib
de DLL Comdlg32.dll
conjunto de API ext-ms-win-shell-comdlg32-l1-1-1 (introduzido no Windows 10, versão 10.0.14393)

Consulte também

CommDlgExtendedError

da Biblioteca de Caixas de Diálogo Comuns

Conceitual

GetSaveFileName

OFNHookProc

OFNHookProcOldStyle

OPENFILENAME

outros recursos

de referência de

SHBrowseForFolder