Функция Win32 для OpenFileDialog?

Я ищу функцию что-то вроде OpenFileDialog on .NET но win32, Я не могу найти эту функцию на имя в MSDN и я помню, что эта функция существует.

кто-нибудь может назвать мне имя?

С ПРИВЕТОМ,

2 ответов


Я считаю, что вы ищете GetOpenFileName.


//make sure this is commented out in all code (usually stdafx.h)
// #define WIN32_LEAN_AND_MEAN 

#include <windows.h>

OPENFILENAME ofn;       // common dialog box structure
TCHAR szFile[260] = { 0 };       // if using TCHAR macros

// Initialize OPENFILENAME
ZeroMemory(&ofn, sizeof(ofn));
ofn.lStructSize = sizeof(ofn);
ofn.hwndOwner = hWnd;
ofn.lpstrFile = szFile;
ofn.nMaxFile = sizeof(szFile);
ofn.lpstrFilter = _T("All*.*Text*.TXT");
ofn.nFilterIndex = 1;
ofn.lpstrFileTitle = NULL;
ofn.nMaxFileTitle = 0;
ofn.lpstrInitialDir = NULL;
ofn.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST;

if (GetOpenFileName(&ofn) == TRUE)
{
    // use ofn.lpstrFile
}

принято от отображение диалога открытия файла с помощью WinApi