Page 1 of 1

dll 16 bits a 32 bits.

Posted: Mon Jul 09, 2007 9:07 am
by Carlos Mora
Estoy pasando un programa inicialmente desarrollado en Clipper, con los recursos en una DLL.
Para exportar los recursos a 32 bits, abro la dll con WorkShop, y le doy a 'Grabar como...' y elijo el tipo 'rc'

Luego importo ese 'rc' a una dll de 32 bits, peeeeero...
los dialogos se distorsionan, como si les hubiese cambiado la fuente, todos los controles quedan desplazados y, como uso un bitmap de fondo, todo se vé fatalmente horrible.

Alguna sugerencia?

Saludos,

Carlos.

Posted: Mon Jul 09, 2007 10:20 am
by Carlos Mora
Para más detalles, la distorsión es solo horizontal, reduciendo en 7/6 tanto las coordenadas como los anchos.
Con un programita corregiré los RCs, pero me gustaría saber el porqué de la cuestión.

Posted: Mon Jul 09, 2007 10:50 am
by Antonio Linares
Carlos,

Windows no mantiene una total compatibilidad en las dimensiones de los diálogos al mostrarlos en 16 ó en 32 bits, como has comprobado.

Puedes usar la claúsula RESIZE16 de FWH para que se vean un poco más parecidos:

ACTIVATE DIALOG oDlg RESIZE16

Posted: Mon Jul 09, 2007 12:13 pm
by Carlos Mora
Antonio,

sabía que lo había visto en algún lado y no recordaba donde. Gracias por la ayuda, de todas maneras prefiero rectificar el rc y la dll ya que el programa de 16 bits pasará a retiro en breve. Además en el editor de recursos se ve fatal!

Cuando termine el programita lo paso para cuando alguien más tenga que corregir el mismo problema.

Saludos,

Carlos

Posted: Mon Jul 09, 2007 2:48 pm
by R.F.
Carlos:

Y si mejor le pegas el .RC directo al EXE ?, digo, por ahorrarte un archivo .DLL de mas, ¿ necesitas ese DLL para algo mas que recursos ?.

Posted: Mon Jul 09, 2007 7:10 pm
by Carlos Mora
Hola René,

Gracias por la recomendación. El incluir los recursos en el exe no mejora la situación, las coordenadas horizontales siguen deformadas. La dll es un paquete de recursos bastante pesado, ya que incluye bitmaps de fondo de numerosos diálogos que en la dll ya estarían compilados y no tengo que esperar al linker que incluya los recursos en el exe cada vez que recompilo.
Además es decisión ya adoptada hace bastante en el departamento que los recursos van en dlls, no ha dado mayores problemas y eventualmente tenemos aplicaciónes con sets de gráficas para diferentes resoluciones. Según la resolución el programa selecciona una u otra dll para mejorar la imagen.

Un saludo,

Carlos.