by César E. Lozada » Tue Sep 23, 2008 3:20 am
Hola, Antonio.
Tienes razón y te pido disculpas por mi error.
Fue por un olvido mío y por la falta de un parámetro en cGetFile. Aprovecho para comentarte sobre este parámetro faltante por si lo consideras de utilidad.
En 2004 hice una modificación a cGetFile consistente de otro parámetro lMultiSelect que permita la selección de múltiples archivos haciendo
nFlags:=nOr(nFlags,if(lMultiSelect,OFN_ALLOWMULTISELECT,0)).
Guardé este cambio en una lib personal y la tenía enlazada a la aplcación que me falla. Como los años no pasan balde, la había olvidado completamente.
Por ser tan antiguo el code de mi cGetFile ponía
if ( dwFlags & OFN_ALLOWMULTISELECT )
pFile = ( LPSTR ) hb_xgrab( 32768 );
else
pFile = ( LPSTR ) hb_xgrab( 128 ); // - UFF!
:
:
if( GetOpenFileName( &ofn ) )
if ( dwFlags & OFN_ALLOWMULTISELECT )
hb_retclen( pFile, 32768 );
else
hb_retc( pFile );
else
hb_retc( "" );
Claramente aquí esta el error.
De nuevo mil disculpas y como siempre muchas gracias.