SHBrowseForFolders() - nur nach Ordnern suchen

Jason20

Grünschnabel
root-Pfad definieren in SHBrowseForFolder()

Servus,

ich möcht einen Dialog starten,welcher es mir ermöglicht einen Quellpfad auszuwählen aus der lokalen Odnerstruktur des Systems. Hab auch schon was gefunden - funktioniert aber nicht richtig

Code:
   	TCHAR path[MAX_PATH];
   	BROWSEINFO bi = { NULL };
   	bi.lpszTitle = ("Verzeichnis der Datenbank (*.dbf)-Dateien...");
   	bi.ulFlags = BIF_RETURNONLYFSDIRS | BIF_STATUSTEXT | BIF_DONTGOBELOWDOMAIN | BIF_EDITBOX;
   
   
   	UpdateData(TRUE);
   
   	LPITEMIDLIST dlg = SHBrowseForFolder ( &bi );
   
   	if ( dlg != 0 )
   	{
   		// get the name of the folder and put it in path
   		SHGetPathFromIDList ( dlg, path );
   		m_csQuellpfad = path;
   		UpdateData(FALSE);
   		//...
   	}

ich kann diesen Dialog in MS C++ / MS WinXP keinen Root-Pfad übergeben, den er als erstes auswählen soll, wenn der Dialog gestartet wird. Das auslesen funktioniert einwandfrei.

hat jemand ne Ahnung ?
 
Zuletzt bearbeitet:
die Idee hatte ich auch schon probiert:

C++:
     bi.pidlRoot = (const struct _ITEMIDLIST *)"C:\\";

aber wenn ich dann auf den Button klicken um den FolderBrowserDialog zu starten kommt eine Fehlermeldung und das Programm wird beendet.

geht irgendwie nicht *HEULL*
 
Zurück