Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-04-2016
Avatar de ramflores
ramflores ramflores is offline
Miembro
 
Registrado: may 2005
Ubicación: Monterrey, Mex.
Posts: 87
Poder: 19
ramflores Va por buen camino
Consumir DLL

Buen dia Foro.

Estoy empezando con el tema de poder consumir una DLL, mas no se aun como
tengo estas indicaciones como ejemplo de esta funcion de la DLL

Cita:
CLIENT_Init
initialize SDK, call before all SDK function

BOOL CLIENT_Init(
fDisConnect cbDisConnect,
LDWORD dwUser
);
Parameters
cbDisConnect
disconnect recall function, recall disconnected device of current network,do not recall actively disconnected device of ClIENT_LogOut() function which call SDK,prohibit call when set to 0
[in]dwUser
user data
CallBack function
typedef void(CALLBACK *fDisConnect)(
LLONG lLoginID,
char *pchDVRIP,
LONG nDVRPort,
LDWORD dwUser
);
CallBack function Parameters
lLoginID
login handle
pchDVRIP
device IP
nDVRPort
port
dwUser
user data,as user data input above
Return Values
successful return to TRUE,failed return to FALSE.

Remarks
call at time of application initialization.
y se que debo declarar esta funcion asi

Cita:
function CLIENT_Init( cbDisConnect: fDisConnect; dwUser:LongWord): bool; stdcall; External 'dhnetsdk' name 'CLIENT_Init';
pero de ahi en delante ya no se como hacerla funcionar

Gracias de antemano por su apoyo
__________________
Gracias de antemano
Saludos ........
---------------------------------
Ramiro Flores
Responder Con Cita
  #2  
Antiguo 14-04-2016
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Prueba a declararlo así:

Código Delphi [-]
  fDisConnect = procedure(lLoginID: LONGLONG; pchDVRIP: PCHAR; nDVRPort: DWORD; dwUser: LONGLONG); stdcall;
  function CLIENT_Init( cbDisConnect: fDisConnect; dwUser:LongWord): bool; stdcall; External 'dhnetsdk' name 'CLIENT_Init';


Saludos.
Responder Con Cita
  #3  
Antiguo 14-04-2016
Avatar de ramflores
ramflores ramflores is offline
Miembro
 
Registrado: may 2005
Ubicación: Monterrey, Mex.
Posts: 87
Poder: 19
ramflores Va por buen camino
gracias por responder.

Esa linea
fDisConnect = procedure(lLoginID: LONGLONG; pchDVRIP: PCHAR; nDVRPort: DWORD; dwUser: LONGLONG); stdcall;

la pongo ahi mismo arriba de la funcion?

y como lo consumo?

if ( CLIENT_Init( ?, ? ) then
begin
showMessage('Se inicializo con exito')
end

Perdon por tanta pregunta, es que este tema lo desconosco por completo
__________________
Gracias de antemano
Saludos ........
---------------------------------
Ramiro Flores
Responder Con Cita
  #4  
Antiguo 14-04-2016
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Por favor, utiliza las etiquetas adecuadas para fragmentos de código.

LineComment Saludos
Responder Con Cita
  #5  
Antiguo 14-04-2016
Avatar de ramflores
ramflores ramflores is offline
Miembro
 
Registrado: may 2005
Ubicación: Monterrey, Mex.
Posts: 87
Poder: 19
ramflores Va por buen camino
Si claro, una disculpa, ese parrafo se me fue , existe forma de corregirlo?
__________________
Gracias de antemano
Saludos ........
---------------------------------
Ramiro Flores
Responder Con Cita
  #6  
Antiguo 15-04-2016
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Cita:
Empezado por ramflores Ver Mensaje
gracias por responder.

Esa linea
Código Delphi [-]
fDisConnect = procedure(lLoginID: LONGLONG; pchDVRIP: PCHAR; nDVRPort: DWORD; dwUser: LONGLONG); stdcall;

la pongo ahi mismo arriba de la funcion?

y como lo consumo?

Código Delphi [-]
if ( CLIENT_Init( ?, ? ) then
begin
    showMessage('Se inicializo con exito')
end

Perdon por tanta pregunta, es que este tema lo desconosco por completo
Si, lo pones arriba para que el compilados sepa que es el tipo fDisConnect que es un puntero a una función calback C.

El significado y uso de los parámetros que usan es algo que tendrás que averiguar de la documentación de esa dll.

Saludos.
Responder Con Cita
  #7  
Antiguo 15-04-2016
Avatar de ramflores
ramflores ramflores is offline
Miembro
 
Registrado: may 2005
Ubicación: Monterrey, Mex.
Posts: 87
Poder: 19
ramflores Va por buen camino
gracias por sus respuestas, la única documentación que tengo es lo que puse al inicio del post
__________________
Gracias de antemano
Saludos ........
---------------------------------
Ramiro Flores
Responder Con Cita
  #8  
Antiguo 16-04-2016
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Pero si quieres usar esa dll, sabrás para que sirve y que hace...

Saludos.
Responder Con Cita
  #9  
Antiguo 19-04-2016
Avatar de ramflores
ramflores ramflores is offline
Miembro
 
Registrado: may 2005
Ubicación: Monterrey, Mex.
Posts: 87
Poder: 19
ramflores Va por buen camino
Esa DLL, sirve para establecer comunicacion con un DVR de Dahua, la cual requiero extraer cierta info como fecha y hora de ultimo grabado de video
__________________
Gracias de antemano
Saludos ........
---------------------------------
Ramiro Flores
Responder Con Cita
  #10  
Antiguo 19-04-2016
Avatar de ramflores
ramflores ramflores is offline
Miembro
 
Registrado: may 2005
Ubicación: Monterrey, Mex.
Posts: 87
Poder: 19
ramflores Va por buen camino
Buen dia.
Ya logre la comunicacion, ahora estoy tratando de extraer la info

Como se debe declarar este dato en delphi?

Cita:
#define DH_DEVSTATE_DISK 0x0004
__________________
Gracias de antemano
Saludos ........
---------------------------------
Ramiro Flores
Responder Con Cita
  #11  
Antiguo 20-04-2016
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Código Delphi [-]
const
 DH_DEVSTATE_DISK  = $0004;

Saludos.
Responder Con Cita
  #12  
Antiguo 20-12-2016
PieterVos PieterVos is offline
Registrado
 
Registrado: sep 2008
Posts: 4
Poder: 0
PieterVos Va por buen camino
Cita:
Empezado por ramflores Ver Mensaje
Esa DLL, sirve para establecer comunicacion con un DVR de Dahua, la cual requiero extraer cierta info como fecha y hora de ultimo grabado de video
Buenos dias

¿¿ Pudiste avanzar con esta DLL de Dahua ?? Yo necesito interrogar equipos dahua para ver si tienen alguna incidencia (fallo disco duro principalmente) y comprobar que esten online.

att
Responder Con Cita
  #13  
Antiguo 20-12-2016
Avatar de ramflores
ramflores ramflores is offline
Miembro
 
Registrado: may 2005
Ubicación: Monterrey, Mex.
Posts: 87
Poder: 19
ramflores Va por buen camino
buenos dias foro.

Si y pude accederlos, ahorita solo monitoreo si estan online, o si tiene alguna falla del disco duro, aun me falta monitorear si estan grabando las camaras, pero eso aun no lo logro
__________________
Gracias de antemano
Saludos ........
---------------------------------
Ramiro Flores
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como consumir un web service que usa SSL AzidRain Internet 0 12-12-2013 20:38:02
Consumir Webservice darkerbyte Delphi para la web 5 17-11-2012 20:59:50
Consumir un Web Service lbidi Varios 4 17-04-2012 14:28:37
Consumir WebService nasedo Varios 1 11-08-2011 14:32:57
Consumir Webservice MARLON1 Internet 0 06-07-2011 00:07:12


La franja horaria es GMT +2. Ahora son las 02:37:02.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi