Foros del Web » Programación para mayores de 30 ;) » Programación General »

Filtro del dialogo open en C

Estas en el tema de Filtro del dialogo open en C en el foro de Programación General en Foros del Web. Haber, otra duda mas sobre windows y C. Tengo que sacar el dialogo de abrir archivo y pues para eso tengo el filto que va ...
  #1 (permalink)  
Antiguo 21/07/2005, 08:30
Avatar de Instru  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 21 años, 5 meses
Puntos: 52
Filtro del dialogo open en C

Haber, otra duda mas sobre windows y C.

Tengo que sacar el dialogo de abrir archivo y pues para eso tengo el filto que va a leer cierto tipo de archivos:

"Special files(a b)\0*.a;*.b\0All Files\0*.*\0"

Este filtro esta correcto?
Porque al intentar usar la opcion de All Files ya no me muestra nada. Tengo que cerrar el dialogo y volverlo a abrir para que me muestre los archivos.
La conducta que tiene es asi:

Al abrirlo solo me muestra los archivos .a y los .b, al pasar a la opcion All Files ya no me muestra nada y al regresar a la opcion de que me muestre los .a y .b ya tampovo me muestra nada.

Porque pasa esto?
Asi es como inicializo la estructura:

archivo.lStructSize = sizeof(OPENFILENAME);
archivo.hwndOwner = hwnd;
archivo.lpstrFilter =filtro;
archivo.lpstrFile = file_name;
archivo.nMaxFile =127;// sizeof(file_name);
archivo.lpstrInitialDir = NULL;
archivo.lpstrFileTitle = NULL;
archivo.Flags = OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_NOCHANGEDIR | OFN_HIDEREADONLY;
Saludos
  #2 (permalink)  
Antiguo 21/07/2005, 08:52
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 19 años, 11 meses
Puntos: 74
El formato es correcto, lo probe cambiando solo ese campo en el ejemplo que viene con la MSDN y funciona perfectamente, tal vez sea algun otro parametro ...

¿Inicializas toda la estructura OPENFILENAME a 0?
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #3 (permalink)  
Antiguo 21/07/2005, 09:25
Avatar de Instru  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 21 años, 5 meses
Puntos: 52
cierto, no lo inicio a cero, deja le pongo un memset.
Gracias pr la ayuda .
Saludos
  #4 (permalink)  
Antiguo 21/07/2005, 09:28
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 19 años, 11 meses
Puntos: 74
De nadas, aunque no se si era ese el problema.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #5 (permalink)  
Antiguo 21/07/2005, 16:33
Avatar de Instru  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 21 años, 5 meses
Puntos: 52
Si, ya lo probe y efectivamente ese era el problema.
saludos
  #6 (permalink)  
Antiguo 21/07/2005, 23:32
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 19 años, 11 meses
Puntos: 74
Cita:
Iniciado por Instru
Si, ya lo probe y efectivamente ese era el problema.
saludos
Me alegro de que te haya servido, hay varias estructuras que se le pasan al Sistema Operativo que al tener tantos campos que muchas veces no se usan siempre es mejor inicializarlas completamente a cero.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:42.