Hello Antonio,
Tuesday, October 13, 2009, 10:16:41 PM, you wrote:
ACM> El 13/10/2009 18:06, JoshyFun escribi�:
Show quoted text 6 lines
> Si te da error de ejecuci�n hay algo mal, ya que deber�a funcionar
> perfectamente en todas las versiones de Windows incluido "Seven", eso
> si, con el "look" de windows cl�sico tipo XP, no con el de vista ni el
> de seven. � Qu� Lazarus usas ? � Puedes generar un proyecto peque�o que
> te lance el error de ejecuci�n para buscar el problema ?
>
ACM> Pues no hay error ninguno ... Es m�s, lo he probado en un programa ACM> limpio en el que solo tengo un OpenDialog, y un bot�n que al hacer doble ACM> click ejecuta el c�digo:
ACM> IF ( OpenDialog1.Execute) THEN label1.caption:= ACM> OpenDialog1.Filename;
ACM> y sigue d�ndo el mismo error (no recuerdo ahora mismo la frase que ACM> da, pero termina diciendo algo as� con letras may�sculas SEG no se qu�) ...
Es de suponer que es un Segmentation Fault, o lo que es lo mismo un error de esos de punteros locos. Acabo de probarlos en Vista64 y no he apreciado ning�n problema (excepto si pones "OldStyle" que si provoca un error para el que enviar� un parche).
ACM> Lo que s� he hecho, tras tus indicaciones, es poner la vista o look ACM> cl�sica tipo Xp y/o 2k. Teniendo Lazarus abierto y presionando la tecla ACM> F9 para compilar y ejecutar; al pulsar sobre el bot�n para abrir el ACM> OpenDialog, da una ventanita que indica el error (la que dec�a antes). ACM> Sin embargo, teniendo activado el look o apariencia tipo Xp o 2k; y ACM> ejecut�ndo el ejecutable obtenido con lazarus desde el explorador; s� ACM> abre perfectamente el cuadro de dialogo de archivos (OpenDialog); y no ACM> da error ninguno.
ACM> �Misterios de las betas? No s�, la verdad ... Pero me deja algo ACM> perplejo el asunto ...
ACM> Uso Lazarus 0.9.29 beta, de fecha 2009-09-10, con fpc v2.3.1, ACM> revisi�n SVN 21640, i386-win32-win32/win64.
Hmmm. qu� vista ? Tienes instalado alg�n paquete que altere el Aero ? Si puedes por favor f�jate cual es el error lo m�s exacto posible para intentar localizar el problema.
Show quoted text 7 lines
ACM> Ya, trataba de hacer uso con la url que d� antes, de alguna ACM> directiva para compilar esa unit para el OpenDialog especialmente para ACM> el caso Win-vista; y el componente OpenDialog normal que viene por ACM> defecto en Lazarus para el resto de sistemas ...
No puedes con condicionales, tendr�s que limitarte a algo como:
if (Win32MajorVersion>=6) and (Win32Minor>=NoSe) then begin
VistaOpenDialogOpen(.....)
end else begin
OpenDialog1.Execute();
end;
De todos modos voy a pegarle un ojo a ver si consigo que los OpenDialog no especializados (lo que provoca que salgan estilo XP) se puedan tratar sin hacer un "Hooking" y por lo tanto saldr�an tipo Vista.
Best regards,
JoshyFun