Page 1 of 1

Recursos

PostPosted: Mon Mar 05, 2012 11:01 am
by thefull
Tomando como ejemplo \fwh\samples\combosb.prg
Si compilamos ...
buildh combosb.prg, al existir combosb.rc queda 'pegado' en el exe y tiene este aspecto, look windows7
recursos
http://imageshack.us/photo/my-images/254/58184321.jpg/
En fwh\dll existe un *bat para convertir el *rc en *dll llamado rc2dll32.bat, pues bien
rc2dll32 combosb y obtenemos combosb.DLL
Si construimos combosb.prg llamando a recursos (SET RESOURCES TO "combosb.DLL") tiene este aspecto 3D:
recursos

http://imageshack.us/photo/my-images/138/dllea.jpg/

Si es el mismo RC que se convierte en DLL, que ya incluye :

#ifdef __FLAT__
1 24 ".\WinXP\WindowsXP.Manifest"
#endif

#ifdef __64__
1 24 "WinXP/WindowsXP.Manifest64"
#endif

¿ Porqué cuando se utiliza la DLL tiene aspecto 3D ?

Re: Recursos

PostPosted: Mon Mar 05, 2012 5:03 pm
by carlos vargas
hola rafa.

me parece que para que una aplicacion tome los temas de windows el archivo manifest debe estar pegado al ejecutable
en el caso del rc este es pegado al exe y por ello toma bien los temas, pero en el caso de la dll el manifest esta en la dll no en el exe.

tienes dos vias para remediarlo,
1.-haces un rc que solo contenga la parte del manifest para que quede pegado al exe.
2.-tomas el archivo manifest y lo renombras a
elnombredemiexe.exe.manifest

salu2
carlos vargas

Re: Recursos

PostPosted: Tue Mar 06, 2012 10:35 am
by thefull
Gracias por la respuesta, he tomado la via 1, es decir, utilizando la DLL pero el manifest en un *RC externo.
Ademas me permite tambien 'pegar' el icono identificativo al ejecutable, de esta forma:

#ifdef __FLAT__
1 24 "c:\fwh\samples\WinXP\WindowsXP.Manifest"
#endif

#ifdef __64__
1 24 "c:\fwh\samples\WinXP/WindowsXP.Manifest64"
#endif

#define ICON_1 1
ICON_1 ICON "aplicacion.ico"

Saludos y muchas gracias por la ayuda de nuevo.

Re: Recursos

PostPosted: Tue Mar 06, 2012 4:17 pm
by carlos vargas
un honor el compartir :-)

salu2