Error en la función DESKTOPTODEVICE

16/11/2004 - 11:29 por Polaris | Informe spam
Saludos a tod@s
Tengo una aplicación desarrollada para Pocket PC por medio de eVB, que
utiliza una base de datos access.
Estoy intentando transferir ciertas tablas a través de la función
DESKTOPTODEVICE incluida en la librería adofiltr.dll de Microsoft ActiveSync
(Utilizo la versión 3.7.1)
El código es el siguiente:

en un módulo:
Public Declare Function DESKTOPTODEVICE Lib _
"c:\Archivos de Programa\Microsoft ActiveSync\adofiltr.dll" _
(ByVal desktoplocn As String, _
ByVal tablelist As String, _
ByVal sync As Boolean, _
ByVal overwrite As Integer, _
ByVal devicelocn As String) As Long

en el formulario:
lResult = DESKTOPTODEVICE("C:\Datos\BaseDeDatos.mdb", "Clientes..", True,
True, "\My Documents\BaseDeDatos.cdb")

Siempre me devuelve un error -2147024864. Ya que no tengo documentación
acerca de los errores devueltos por la funcíón, he buscado en google y he
llegado a la conclusión de que es algo así como: "No se puede transmitir la
información porque la MDB o la tabla asociada está abierta por otro usuario"

Pero la mdb no está abierta. He probado en varios equipos y siempre obtengo
el mismo resultado. He probado cambiando los valores de sync y overwrite,
pero no hay manera...

Empiezo a desesperar...
¿Alguien puede darme un poco de luz para salir de esta siniestra oscuridad?
Gracias por vuestro precioso tiempo.
Un saludo a tod@s.

Preguntas similare

Leer las respuestas

#1 el_joaqui
09/12/2004 - 18:17 | Informe spam
Polaris wrote:

Mostrar la cita
Yo tengo el mismo problema, y tras buscar en internet he encontrado algo:
http://www.accessspot.org/DesktopTo...915-a.html

en esta página te comentan que es problema de PPc 2003

espero te sirva de ayuda
#2 grekos
11/12/2004 - 17:03 | Informe spam
He visto la página y según he podido entender más o menos ya que mi
inglés es de lo peor, dice que esa función no sirve ya que no puede
borrar o sobreescribir la base de datos usando windows mobile 2003. Que
una solucíón es borrarla antes usando esto:
Public Declare Function CeDeleteFile Lib "rapi.dll" (ByVal lpFileName
As
String) As Long

lret = CeDeleteFile(StrPtr("\my documents\test.cdb"))

El caso es que no me funciona esta función tampoco.

Alguien sabe como solucionar este problema de la función
desktoptodevice y devicetodesktop???

Por cierto, en el módulo que hago en visual basic para trabajar con el
pc pongo esto:
Declare Function DESKTOPTODEVICE Lib "E:\Archivos de programa\Microsoft
ActiveSync\adofiltr.dll" _
(ByVal desktoplocn As String, _
ByVal tablelist As String, _
ByVal sync As Boolean, _
ByVal overwrite As Integer, _
ByVal devicelocn As String) As Long

...pero que es lo que debo de poner en el módulo que haga en evb? en
la pocket pc no teno el archivo adofiltr.dll. Es otra libreria con otro
nombre????

gracias.

joaquín wrote:
Mostrar la cita
que
Mostrar la cita
ActiveSync
Mostrar la cita
True,
Mostrar la cita
documentación
Mostrar la cita
google y he
Mostrar la cita
transmitir la
Mostrar la cita
otro usuario"
Mostrar la cita
siempre obtengo
Mostrar la cita
overwrite,
Mostrar la cita
oscuridad?
Mostrar la cita
algo:
Mostrar la cita
http://www.accessspot.org/DesktopTo...915-a.html
Mostrar la cita
Ads by Google
Search Busqueda sugerida