CFileDialogで複数のファイルを取得する。

ファイルを開くとやった時に出てくるダイアログで
一気に複数ファイルを選択できるようになります。


CFileDialogの設定


CFileDialog dlg(TRUE, NULL, NULL,
               OFN_FILEMUSTEXIST |
               OFN_ALLOWMULTISELECT |  //ファイルを複数設定させる為のフラグ
               OFN_HIDEREADONLY,
               _T("すべてのファイル(*.*)|*.*||"));
char szFileNameBuffer[10000] = "";       // ファイル名を保存させる為のバッファ
dlg.m_ofn.lpstrFile = szFileNameBuffer;  // バッファの置き換え
dlg.m_ofn.nMaxFile = 10000;              // 最大文字数の設定
if (dlg.DoModal() == IDOK)
{
    POSITION pos = dlg.GetStartPosition();
    while( pos )
    {
        AfxMessageBox(dlg.GetNextPathName( pos ));
    }
}

[ 戻る ]