Page 1 of 1

Ayuda con 32 bits Urgente

Posted: Thu Sep 06, 2007 12:54 am
by mantonio_08
Hola Foro:
Tengo el siguiente problema:

1. Como puedo declarar la Ace32.dll y otras DLL en una aplicacion de 32 bits, ya que verce me dice que no puede abrir esta dll.

2. En 16 bits yo podia consultar si en el disco duro existia un archivo de la siguiente forma:
var= "Maestro" (Nombre de la base de datos)
If File("&var..dbf")
.... Abrir archivo
If File("&Var..cdx")
... Abrir archivo indice
endif
endif
. Mi pregunta es como puedo hacer los mismo en Xharbour y Fwh701


Saludos,
Antonio

Re: Ayuda con 32 bits Urgente

Posted: Thu Sep 06, 2007 4:37 am
by R.F.
mantonio_08 wrote: 1. Como puedo declarar la Ace32.dll y otras DLL en una aplicacion de 32 bits, ya que verce me dice que no puede abrir esta dll.
No lo necesitas a menos que estes usando el Advantage Database Server, si no estas usando ADS, entonces quitalo de las opciones de enlazado del VerCE, y por cierto, no es el ACE32.DLL , es el ACE32.LIB

Ahora bien, si estas usando Advantage, el ACE32.LIB proviene del ACE32.DLL

1) Consigue un ACE32.DLL de la version de ADS que estés usando (lo encuentras en la carpeta del Advantage Data ARchitech)

2) Con el Implib de borland crea la libreria

IMPLIB ACE32.LIB ACE32.DLL

Y listo
mantonio_08 wrote: 2. En 16 bits yo podia consultar si en el disco duro existia un archivo de la siguiente forma:
var= "Maestro" (Nombre de la base de datos)
If File("&var..dbf")
.... Abrir archivo
If File("&Var..cdx")
... Abrir archivo indice
endif
endif
En teoría si pero estas matando pulgas a cañonazos, no necesitas usar macros para la funcion FILE:

Code: Select all

var := "Maestro"
IF File(var+".dbf")
...
...
...
Como verás el uso de las macros con cadenas de caracteres que estas usando es redundante.

Re: Ayuda con 32 bits Urgente

Posted: Thu Sep 06, 2007 2:28 pm
by mantonio_08
Rene:

Muchas gracias por tu respuesta, me queda muy clara tu explicacion.

Saludos,
Antonio

RF wrote:
mantonio_08 wrote: 1. Como puedo declarar la Ace32.dll y otras DLL en una aplicacion de 32 bits, ya que verce me dice que no puede abrir esta dll.
No lo necesitas a menos que estes usando el Advantage Database Server, si no estas usando ADS, entonces quitalo de las opciones de enlazado del VerCE, y por cierto, no es el ACE32.DLL , es el ACE32.LIB

Ahora bien, si estas usando Advantage, el ACE32.LIB proviene del ACE32.DLL

1) Consigue un ACE32.DLL de la version de ADS que estés usando (lo encuentras en la carpeta del Advantage Data ARchitech)

2) Con el Implib de borland crea la libreria

IMPLIB ACE32.LIB ACE32.DLL

Y listo
mantonio_08 wrote: 2. En 16 bits yo podia consultar si en el disco duro existia un archivo de la siguiente forma:
var= "Maestro" (Nombre de la base de datos)
If File("&var..dbf")
.... Abrir archivo
If File("&Var..cdx")
... Abrir archivo indice
endif
endif
En teoría si pero estas matando pulgas a cañonazos, no necesitas usar macros para la funcion FILE:

Code: Select all

var := "Maestro"
IF File(var+".dbf")
...
...
...
Como verás el uso de las macros con cadenas de caracteres que estas usando es redundante.