![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Gracias por responder
La librería no es mía me dieron para poder usarla Las funciones están definidas para exportación tengo un código en vb que las usa No se como están definidas las funciones solo tengo el ejemplo de uso No entiendo mucho de vb Pero lo que necesito es poder usar esa librería |
|
#2
|
||||
|
||||
|
Habría que saber la firma de las DLL's que está exportando la librería de VisualBasic.
También el tipo de DLL (estoy pensando en un ActiveX). en ese caso hay que registrarla y desde Delphi puedes importar. Es dar un poco palos de ciego, porque no estás concretando y faltan muchos datos, para algo que no es simple como esto. También puedes probar: Component/Import component/ Import Type Library Import ActiveX control También puedes revisar estos hilos que hablan sobre cómo llamar a DLLs en otros lenguajes (VB) entre ellos: http://clubdelphi.com/foros/showthread.php?t=10532 https://www.clubdelphi.com/foros/sho...d.php?p=533852
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
#3
|
|||
|
|||
|
No es un Activex, ya intente registrarla e importarla, no me permite registrar
creo que es una clase que esta incluida en la DLL, con funciones y variables, no son simples funciones las que tiene la DLL no se como hacer la definicion para exportar la clase de la DLL, definir el tipo en Delphi para poderla crear y usar o estoy equivocado |
|
#4
|
|||
|
|||
|
Esto es lo que entieno, pero no se como definir la clase que esta en la "LibraryPOS.dll" para poderla usar
Código:
// Crear una instancia de la clase _POSLibrary
Dim _pos As New _POSLibrary._LibraryPOS <- crea una clase que esta en la DLL
// Crear una instancia de la clase SerialPort
Dim _portPOS As New IO.Ports.SerialPort
// Conexión al puerto serial e inicio de conexión
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles btnPagarChip.Click
If (validarDatosTransac() And validarMonto()) Then
_pagoChip = True
Dim isConnected As Boolean = False
If (Not _portPOS.IsOpen) Then
ActivePorts = _pos._ListActivePorts_POS() ' -- dll -- <- lista los puertos mediante la clase
For Each puerto As String In ActivePorts
_NumPort = puerto
Next
isConnected = _pos._OpenPort_POS(_NumPort) ' -- dll -- <- abre el puerto con una funcion en la clase
If (isConnected) Then
_status = "0"
_portPOS = _pos.PortUSB
AddHandler _portPOS.DataReceived, AddressOf PortCOM_DataReceived <- no entiendo que es lo que hace pero asigna el puerto
End If
Else
isConnected = True
_status = "0"
End If
If (Not isConnected) Then
MsgBox("No hay conexion al puerto COM.")
Return
End If
ReqConnectionToPOS_Local()
End If
End Sub
|
|
#5
|
|||
|
|||
|
lo que necesitaria hacer seria algo asi con la DLL que tengo
https://www.clubdelphi.com/foros/showthread.php?t=93148 gracias Última edición por Neftali [Germán.Estévez] fecha: 05-11-2021 a las 15:39:12. |
|
#6
|
||||
|
||||
|
El problema es que no hay forma de importar esa DLL desde Delphi. De todas las formas en que lo he probado me da error.
Habría que saber si esta gente tienen algo más para integrar. Desde .NET si se puede importar la referencia. Ver si tienen un SDK, un ActiveX o algo que no se refiera sólo a .NET.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. Última edición por Neftali [Germán.Estévez] fecha: 05-11-2021 a las 15:12:58. |
|
#7
|
||||
|
||||
|
Cita:
El problema es que eso está pensado para una DLL realizada en Delphi.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
#8
|
||||
|
||||
|
Cita:
La DDL está exportando una clase, no métodos/funciones, por lo tanto no es una DLL "plana", por el contrario es un objeto COM, y si no quieres reimplementar COM en Delphi, debes importarla como tal con las funciones específicas del IDE de Delphi para importar COM / ActiveX. (No dispongo de un Delphi instalado como para guiarte, pero hay mucha info en el foro como aquí) ¡Saludos!
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
|
|
#9
|
|||
|
|||
|
Gracias, pero no me permite registrar la DLL para luego importa
--------------------------- RegSvr32 --------------------------- Se cargó el módulo "C:\WINDOWS\system32\LibraryPOS.dll", pero no se encontró el punto de entrada DllRegisterServer. Asegúrese de que "C:\WINDOWS\system32\LibraryPOS.dll" es un archivo DLL u OCX válido e inténtelo de nuevo. --------------------------- Aceptar --------------------------- |
|
#10
|
||||
|
||||
|
Aqui tienes es que ir con la gente que hizo esa DLL y que te den la info de como se integra.
O es un COM, o es una DLL "plana". En el caso segundo, necesitas los "headers" que se deben pasar como un archivo de C .h y una documentacion de como son las estructuras.
__________________
El malabarista. |
|
#11
|
||||
|
||||
|
El tema es simple, si en VB se usan directamente clases de la librería, se trata de un objeto COM, si el código VB importa funciones y procedimientos, se trata de una "DLL Plana", y se debe importar al igual que en Delphi, haciendo la definición de cada función a utilizar, por ejemplo:
Código:
Declare Function FormatMessage Lib "kernel32" Alias "FormatMessageA" _
(ByVal dwFlags As Long, lpSource As Any, ByVal dwMessageId As Long, _
ByVal dwLanguageId As Long, ByVal lpBuffer As String, _
ByVal nSize As Long, Arguments As Long) As Long
Cita:
Si la librería fue desarrollada en VB, seguramente dependa del runtime de Visual Basic, y de MSCOMM32 para usar el puerto serie. Ver: http://www.clubdelphi.com/foros/showthread.php?t=94393 ¿La DLL es pública?... ¿de dónde se puede descargar?
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Última edición por delphi.com.ar fecha: 23-11-2021 a las 23:33:42. |
|
#12
|
||||
|
||||
|
Cita:
Yo también intenté registrarla y da error. Por lo tanto, tal y como comenta [mamcx], sólo queda hablar con quien la ha diseñado y ver qué están diseñando y cómo.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Implementar Trigger o no? | golf2008 | MySQL | 7 | 08-11-2008 00:24:09 |
| ayuda para Implementar el sudoku | gulder | Varios | 5 | 25-02-2008 18:37:24 |
| Implementar GnuPG | Henryoh | Varios | 2 | 17-01-2007 22:10:18 |
| ayuda!!! como implementar sql en delphi | diablorojo1886 | SQL | 3 | 04-12-2006 03:02:25 |
| Implementar un CVS | menavas | Varios | 1 | 03-10-2006 23:48:01 |
|