SHBrowseForFolder using BIF_NEWDIALOGSTYLE flag

30/11/2004 - 20:01 por Jane | Informe spam
Hola.
Estoy usando esta funcion para manejar directorios pero quiero agregarle la
funcionalidad de crearlos tambien. con asignarle la bandera
BIF_NEWDIALOGSTYLE es posible al abrir el dialog aparece una opcion para
poder crear folders, sin embargo cuando yo cierro el dialogo(ya sea con
cancel u OK) causa un assertion.. alguna idea del porque??? estoy usando la
version 5.0.3900.6975 de SHELL32.DLL.. y mi codigo es el sig.

LPITEMIDLIST pidlSelected = NULL;
BROWSEINFO bi = {0};
LPMALLOC pMalloc = NULL;
LPTSTR pszDisplayName = _T("");

bi.hwndOwner = ((CWnd*)this)->GetSafeHwnd();
bi.pidlRoot = pidlRoot;
bi.pszDisplayName = pszDisplayName;
bi.lpszTitle = data;
bi.ulFlags = BIF_NEWDIALOGSTYLE;
bi.lpfn = NULL;
bi.lParam = 0;

CoInitialize( NULL );
pidlSelected = SHBrowseForFolder(&bi);
data.Empty();
if( pidlSelected )
{
SHGetMalloc(&pMalloc);
SHGetPathFromIDList( pidlSelected, ( (LPTSTR)(LPCTSTR)data ) );
pMalloc->Free(pidlSelected);
pMalloc->Release();
}
CoUninitialize();


Gracias !!
 

Leer las respuestas

#1 Rodrigo Corral [MVP]
30/11/2004 - 21:15 | Informe spam
¿De que tipo es la variable data?


Un saludo
Rodrigo Corral González [MVP]

FAQ de microsoft.public.es.vc++
http://rcorral.mvps.org

Preguntas similares