In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

¿Como configuro el entorno en XEDIT para compilar a dll?

Lenguaje de progamación XBase en español
Responder
Carlos Mora
Mensajes: 88
Registrado: Vie Jul 28, 2006 9:36 am

¿Como configuro el entorno en XEDIT para compilar a dll?

Mensaje por Carlos Mora »

Buenos días gente,

Estoy haciendo algunas pruebas para generar dll de p-code puro, sin vm, para llamarlas desde el programa principal. Básicamente eso se puede hacer con un programa principal tal como este:

Código: Seleccionar todo

// myapp.prg
DYNAMIC M1
FUNCTION Main
   Local hLib

   hb_cdpSelect( "RU866" )
   hLib := hb_LibLoad( "mylib.dll" )
   IF !Empty( hLib )
      M1()
   ENDIF
   hb_LibFree( hLib )
   RETURN Nil
Y la dll tendría este código:

Código: Seleccionar todo

// mylib.prg
FUNCTION M1
   ? "It is the function of the dynamic library " + Procname()
   Inkey(0)
   RETURN Nil
Este código de ejemplo está tomado de la página del gran Alex Kresin.

Ahora bien: con la aplicacion principal no tengo problemas, se genera el exe y tal.
El problema es al compilar la libreria ¿Como configuro el entorno en XEDIT para compilar a dll?

Las opciones para crear proyectos son solo EXE, LIB o WEB.
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5705
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Re: ¿Como configuro el entorno en XEDIT para compilar a dll?

Mensaje por jfgimenez »

Carlos,

sí, es verdad, XEdit sólo tiene esos tipos de proyecto. No genera DLLs porque las DLLs de/para Xailer necesitan un "stub" especial que sólo lo proporciona el IDE. No obstante, supongo que podrás configurar los flags para generar una DLL simple (sin ese stub), aunque yo personalmente nunca lo he probado.
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
Responder