Page 1 of 1

Ayuda para crear el RDDADS.LIB

Posted: Thu Oct 17, 2013 6:11 pm
by hugotheler
Estoy intentando recompilar el RDD de ADS, pasarlo de Xharbour 0.99.71 - BCC55 a xHarbour 1.2.3 - BCC582 .

Lo primero que hice fue bajar la última versión de los fuentes :
http://sourceforge.net/p/xharbour/code/ ... b/rdd_ads/

Luego baje el cliente de ADS, como para conectarme a un motor 8.x o mayor. a estos los baje de la pagina de SysBase.

Hice un BAT de compilación para construir las 2 librerías :

C:\BCC582\BIN\bcc32.exe -c -Ic:\harbour\include -Ic:\acesdk ads1.c
C:\BCC582\BIN\bcc32.exe -c -Ic:\harbour\include -Ic:\acesdk adsfunc.c
C:\BCC582\BIN\bcc32.exe -c -Ic:\harbour\include -Ic:\rdd_ads\acesdk adsmgmnt.c
REM construir la libreria ADSRDD:
C:\BCC582\BIN\tlib.exe adsrdd.lib -+ ads1.obj
C:\BCC582\BIN\tlib.exe adsrdd.lib -+ adsfunc.obj
C:\BCC582\BIN\tlib.exe adsrdd.lib -+ adsmgmnt.obj
REM construi la otra libreria ACE32.LIB.
C:\BCC582\BIN\implib.exe ace32.lib c:\acesdk\ace32.dll


Hasta ahí todo bien , pero cuando las sumo a mi proyecto no me reconoce algunas
funciones , que supuestamente son para versiones de clientes de ADS mayores a 6.nn

Eje
ADSCONNECT60
ADSDDREMOVETABLE

Verifique la version del cliente de ADS :
Eje ADSVER ACE32.DLL ( me dice 8.10.0.6 )
Alguien me puede indicar que estoy haciendo mal , o bien que paso me esta faltando..

Desde ya Gracias
Hugo Theler

Re: Ayuda para crear el RDDADS.LIB

Posted: Mon Oct 21, 2013 5:37 pm
by Antonio Linares
Hugo,

Por favor copia aqui los errores exactos que te aparecen, gracias

Re: Ayuda para crear el RDDADS.LIB

Posted: Mon Oct 21, 2013 6:30 pm
by carlos vargas
La situación es la siguiente, en el fichero ADSFUNC.C en la carpeta contrib de xharbour, agregaron un bloque de ifdef (compilación condicionada) que no esta permitiendo que se incluyan en la compilación y generacion de la libreria rddads ciertas funciones, por eso es que te hacen faltas esas funciones dejando la lib inutilizables, yo lo que hice fue tomar del svn de xharbour el fuente de ese fichero dos versiones atrás y remplazarlo, luego reconstruyo xharbour y listo.


salu2

Re: Ayuda para crear el RDDADS.LIB

Posted: Mon Oct 21, 2013 7:14 pm
by Antonio Linares
Carlos,

Podrias proporcionar tus librerias de ADS para xHarbour para que Hugo y otros puedan usarlas ? gracias :-)

Re: Ayuda para crear el RDDADS.LIB

Posted: Mon Oct 21, 2013 7:22 pm
by carlos vargas

Re: Ayuda para crear el RDDADS.LIB

Posted: Mon Oct 21, 2013 7:23 pm
by Antonio Linares
Carlos,

muchas gracias :-)

Re: Ayuda para crear el RDDADS.LIB

Posted: Tue Oct 22, 2013 3:05 pm
by hugotheler
Hola :

Gracias Carlos , funcionaron tus Lib..., pero quería ver si las podía crear yo... para poder evaluar distintos compiladores C y para actualizar cada tanto el acceso a ADS.

Entiendo que la conpilación es condicionada, y aparentemente es eso lo que me falla, la condición de compilación la da la variable ADS_LIB_VERSION

Los tres programas de c ( ADS1.C , ADSFUNC.C , ADSMGMNT.C ) al compilarse utilizan el archivo RDDADS.H , este archivo asigna a la variable ADS_LIB_VERSION la version detectada en el cliente ADS.
Esto lo hace analizando las funciones soportadas en el archivo de cabacera ACE.H del cliente de ADS ( ACESDK )
A partir del valor que toma la variable ADS_LIB_VERSION suma o no las funciones soportadas por el cliente.
Intente asignarle a la variable ADS_LIB_VERSION 8.10 pero no me funciono...

Alguien puede aclarar un poco este tema...?

Actualizo el BAT que utilizo para la creación de las librerías , para harbour aparentemente se debe sumar otro programa adsx.c

C:\BCC582\BIN\bcc32.exe -c -Ic:\harbour\include -Ic:\acesdk ads1.c
C:\BCC582\BIN\bcc32.exe -c -Ic:\harbour\include -Ic:\acesdk adsfunc.c
C:\BCC582\BIN\bcc32.exe -c -Ic:\harbour\include -Ic:\acesdk adsmgmnt.c
REM C:\BCC582\BIN\bcc32.exe -c -Ic:\harbour\include -Ic:\acesdk adsx.c // PARA HARBOUR
REM construir la libreria ADSRDD:
C:\BCC582\BIN\tlib.exe adsrdd.lib -+ ads1.obj
C:\BCC582\BIN\tlib.exe adsrdd.lib -+ adsfunc.obj
C:\BCC582\BIN\tlib.exe adsrdd.lib -+ adsmgmnt.obj
REM C:\BCC582\BIN\tlib.exe adsrdd.lib -+ adsx.obj // PARA HARBOUR
REM construi la otra libreria ACE32.LIB.
C:\BCC582\BIN\implib.exe ace32.lib c:\acesdk\ace32.dll



Dejo algunos link de utilidad para este tema :

Ultimos fuentes para Harbour:
https://github.com/harbour/core/tree/ma ... rib/rddads

y aqui para xharbour:
http://sourceforge.net/p/xharbour/code/ ... b/rdd_ads/

En esta direccion pueden leer sobre el funconamiento del clientes de ADS.
http://structuredsystems.blogspot.com/


Saludos
Hugo Theler

Re: Ayuda para crear el RDDADS.LIB

Posted: Tue Oct 22, 2013 5:36 pm
by carlos vargas
Estas son la diferencia de la versión que uso contra la actual del svn
esos bloques de compilación condicionada y la eliminación de una constante de compilacion son la diferencia.

Linea 82, #undef HB_OS_WIN
Linea 1700, #if !defined( HB_OS_WIN ), inicia un bloque de compilacion condicionada hasta el siguiente #endif
Linea 1983, #if !defined( HB_OS_WIN ), inicia un bloque de compilacion condicionada hasta el siguiente #endif
Linea 2350, #if !defined( HB_OS_WIN ), inicia un bloque de compilacion condicionada hasta el siguiente #endif

Este es el archivo adsfunc.c que estoy usando, corresponde a dos versiones atras en el svn, antes de las modificaciones indicacadas.

http://www.donboscocorp.com/carlos/adsfunc.c

esto solamente es necesario en xHarbour, este fuente no es del de Harbour, el cual esta correcto.

salu2
carlos vargas

Re: Ayuda para crear el RDDADS.LIB

Posted: Sun Feb 15, 2015 5:37 pm
by ruben Dario
Saludos

Carlos me puedes proporcionar las librerias para xHarbour , ya que estan rotos los Link. Que version son,

Carlos veo que tienes mucha experiencia con el ADS.

Tengo una Duda.
Tengo en mis DBF en CLipper 5.3 y Indices CDX, para pasarme a ADS , tengo qut emigar la base de datos, o no es necesario.
Si si enlazan las librerias rddads y Ace32, hay que montar otro programa , como el motor como Mysql. En realidad no lo conozco muy bien.
Veo que se puede manejar indices CDX , el ADS tiene manejo de sus propios indices, cual es mejor.


Gracias










Gracias

Re: Ayuda para crear el RDDADS.LIB

Posted: Tue Feb 17, 2015 2:22 pm
by Giovany Vecchi
Para gerar RddAds.lib

Crie um BuildAds.bat

Code: Select all

del C:\TOOLS\RddAds\.hbmk\win\bcc\*.obj
del C:\TOOLS\RddAds\.hbmk\win\bcc\*.c
set HB_WITH_ADS=C:\TOOLS\ADS10.1\acesdk
set path=%path%;c:\tools\bcc568\bin
c:\TOOLS\HARBOUR\bin\hbmk2.exe -hblib rddads
Pause 
 
Na pasta C:\TOOLS\ADS10.1\acesdk esta a versão distribuida do Ace32 de Advantage

Re: Ayuda para crear el RDDADS.LIB

Posted: Tue Feb 17, 2015 7:27 pm
by ruben Dario
Gracias.
Y en donde Ubico los Fuentes C:\TOOLS\ADS10 para poder compilar

Re: Ayuda para crear el RDDADS.LIB

Posted: Tue Feb 17, 2015 7:55 pm
by Giovany Vecchi
ruben Dario wrote:Gracias.
Y en donde Ubico los Fuentes C:\TOOLS\ADS10 para poder compilar
Faça download de aceapi em http://devzone.advantagedatabase.com/dz ... Platform=6

A pasta C:\TOOLS\ADS10.1\acesdk se refere onde esta o arquivo ACE.H para que o compilador crie a LIB conforme a versão do rdd.

Re: Ayuda para crear el RDDADS.LIB

Posted: Thu Feb 19, 2015 5:09 pm
by Yessica

Hola Carlos un favor, necesito la libreria rddads a 64 bits para harbour, necesito generarla, pues estoy migrando mis aplicaciones de fwh32 a fwh64 con harbour 3.2, Borland 5.82 y uso el ADS 11.10.

No he podido generar mis .EXE ya que me falta esta librería, podrias decirme como puedo adquirir el .bat y los fuentes para generar dicha librería.

Gracias espero tu respuesta.

Yessi

Re: Ayuda para crear el RDDADS.LIB

Posted: Thu Feb 19, 2015 7:24 pm
by karinha

Re: Ayuda para crear el RDDADS.LIB

Posted: Fri Feb 20, 2015 3:10 am
by ruben Dario
Saludos
Yesica
No se si te sirva , pero mira esta libreria

http://forums.fivetechsupport.com/view ... s#p164036