C++ & MFC - Multiselect schafft nur 10 Dateien auf einmal?

Dying Cry

Vice Admiral Special
Mitglied seit
05.01.2002
Beiträge
971
Renomée
0
Standort
Göttingen
Hi,

folgender Code:

Code:
static char szFilter[] = "Audio Files (*.mp3, *.wav)|*.mp3;*.wav|All Files (*.*)|*.*||";
CFileDialog fd(true, NULL, NULL, OFN_ALLOWMULTISELECT, szFilter);

if(fd.DoModal() == IDCANCEL)
	return;

POSITION pos = fd.GetStartPosition();

while(pos != NULL)
	m_cstrPlaylist.Add(fd.GetNextPathName(pos));

Ich öffne einen FileDialog in dem ich mehrere Audiodateien auswählen will. Wenn ich 10 Stück oder weniger markiere, funktioniert es auch. Die Dateinamen werden in dem CStringArray gespeichert.

Wenn ich mehr als 10 aussuche, wird gar kein Dateiname ausgewählt.

Woran liegt es? :/

Liebe Grüße,
 
Kann sein, dass der von MFC verwendete Puffer zu klein ist. Versuchs mal direkt mit dem Win32-API.
 
Habe jetzt die Buffer vergrößert.
Code:
	LPTSTR lpstrFile= new TCHAR[MAX_PATH*20];
	*lpstrFile = 0;
	fd.m_ofn.lpstrFile = lpstrFile;
	fd.m_ofn.nMaxFile = MAX_PATH*20;
Läuft perfekt...

Dank dir für den Tip!
 
Zurück
Oben Unten