Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #21  
Antiguo 22-07-2020
softarg softarg is offline
Miembro
 
Registrado: may 2018
Posts: 16
Poder: 0
softarg Va por buen camino
Epson fiscal tm900

Hola a todos, veo que algunos ya están hace tiempo luchando con esta impresora.

Estoy tratando de importar la Dll = EpsonFiscalInterface.dll en Delphi 10.3 pero es imposible, "Error al cargar la bibioteca de tipo/DLL".

Intente registrar la Dll de varias formas y tampoco funciona.

alguno pudo traducir todas las llamadas a las funciones?
hay alguna forma de ver cuales son las funciones expuestas por la Dll?

estoy atorado hace días con esto, agradezco su tiempo.

Saludos Softarg.
Responder Con Cita
  #22  
Antiguo 22-07-2020
softarg softarg is offline
Miembro
 
Registrado: may 2018
Posts: 16
Poder: 0
softarg Va por buen camino
Epson fiscal tm900

Cita:
Empezado por omarperez.qui Ver Mensaje
Hola, estoy luchando con una Dll de una impresora Epson Fiscal (TM900), la que viene en la definición

DLL_EXPORT_IMPORT int DLL_STD_CALL
ConsultarVersionDll( char *respuesta_descripcion, int respuesta_descripcion_largo_maximo, int *respuesta_mayor, int *respuesta_menor );

En un ejemplo que trae la misma librería esta definida :

Código Delphi [-]
type
  TConsultarVersionDll = function ( descripcion : PChar; descripcion_largo_maximo: LongInt; var mayor : LongInt; var menor : LongInt) : LongInt; StdCall;
  
var
  dll  : THandle;
  error : LongInt;
  str : Array[0..100] of Char;
  mayor : LongInt;
  menor : LongInt;

  ConsultarVersionDll: TConsultarVersionDll;

begin
  dll := 0;

  // instanciar dll - recordar que se require "uses Windows"
  // for production -- dll := LoadLibrary('EpsonFiscalInterface.dll');
  dll := LoadLibrary('EpsonFiscalInterface.dll');

  // check error
  if dll = 0 then
  begin
    ShowMessage('Error al instanciar DLL');
    Exit;
  end;

  // obtener las referencias a funciones:  "ConsultarVersionDll"
  @ConsultarVersionDll := GetProcAddress(dll, 'ConsultarVersionDll');
  if not Assigned(ConsultarVersionDll) then
  begin
    ShowMessage('Error al asignar funcion: ConsultarVersionDll');
    Exit;
  end;
  
  // execute ConsultarVersionDll
  mayor := 0;
  menor := 0;
  str := StringOfChar (' ', 100);

  error := ConsultarVersionDll( str, 100, mayor, menor );

  ShowMessage( str );
  ShowMessage( IntToStr(mayor) );
  ShowMessage( IntToStr(menor) );
  ShowMessage( IntToStr(error) );

  // desalocar dll
  FreeLibrary(dll);
end;

Esto siempre da error y he probado cambiar los tipo de datos pero nada funciona
El problema es que el ejemplo viene para Lazarus y evidentemente es distinto a Delphi.

Pudiste obtener las cabeceras de todas las funciones para usar/vincular la Dll?

Gracias
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
EPSON fiscal hgiacobone Varios 2 17-11-2015 17:14:01
Epson TM-L60 II BlueSteel Varios 0 03-01-2008 00:20:06
Quickreport + Epson FX-890 MasterXP Impresión 5 31-07-2007 08:52:53
Parametros Opcionales no Parametros por defecto Velia Varios 7 19-08-2006 15:18:42
Epson u210B mane Impresión 3 08-06-2005 10:06:27


La franja horaria es GMT +2. Ahora son las 12:35:39.


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