Ayuda con dll externa
1 Archivos Adjunto(s)
Estimados,
Les solicito una ayuda con este tema pues es mi primer contacto con DLLs. Necesito ejecutar un metodo de una clase que esta incluida en una dll construida en VB. La clase se llama '_clsSobre' y su metodo es 'Prueba'. Les pego el codigo que estoy intentando usar: Cuando ejecuto mi aplicacion me tira el siguiente error: 'project Efactura.exe raised exception class EAccessViolation with ......' Me pueden ayudar o decir por donde empezar ? |
Hola rgarcia_ayala, bienvenido a Club Delphi :)
Como a todos los que se inician te invitamos a que leas nuestra guía de estilo. Cuando pongas código en tus mensajes usa TAG's para darle mas claridad como lo explica la siguiente imágen: Saludos :) |
¿Nos podrías subir la DLL de ejemplo?
¿Es una DLL? ¿Un servidor COM? En el código que has puesto no hay referencia a la DLL; Debería fallarte al compilar ¿no? |
1 Archivos Adjunto(s)
Muchas gracias por responder.
Ok Neftali, te subo la dll en cuestion. Pero te cuento que finalmente y por ensayo y error pude hacerla funcionar..... Pero sigo sin entender mucho sobre el tema. Te paso el código que está funcionando:
|
Lo primero es que es un servidor COM, por lo tanto hay que registrarla con regsvr32.
|
(1) Registrar la DLL con regsvr32
(2) Importarla desde Delphi (Import Type Librery) que genera el fichero TLB (3) Un código similar a este debería bastar para acceder...
|
Muchas gracias por tus aportes Neftali, han sido de mucha ayuda.
Considero que el tema ha sido resuelto, pero antes me gustaria que me sugirieras algunos hilos para poder entender mejor lo que es servidor COM y lo que es DLL. Saludos y muchas gracias nuevamente.^\||/ |
Todo son DLL's, no son cosas diferentes.
Si revisas documentación de MIicrosoft encontrarás toda la que necesites. Una simple búsqueda en Google te dará infinitos resultados. Empieza por la wiki. |
Error compilar fichero TLB de DLL externa (VB)
1 Archivos Adjunto(s)
Estimado Neftali,
Utilizaba una dll externa desarrollada en VB a la cual le han introducido modificaciones y la cual al registrar e instalar no me generó ningún tipo de error. El problema surge cuando compilo mi aplicación: [Error] eFacturaCOM_TLB.pas(248): Property setters cannot take var parameters.
Adjunto captura del error al compilar y la nueva dll. |
La franja horaria es GMT +2. Ahora son las 13:16:50. |
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