Los foros del Guille

Si no encuentras respuesta, puedes buscar en el sitio del Guille

Google
 

MKN Reservas (Maro - Kayak Nerja)


Kayak Maro - Rutas y alquiler de kayak y tabla
Selecciona el foro y pulsa en mostrar:     Mostrar 
De tu inter�s (algunos de los avisos publicados)

01/feb./2019

Los moderadores, MVP y administradores podrán seguir editando, respondiendo o creando nuevos mensajes

Con idea de que puedan ayudar a responder e ir cerrando mensajes ;-)

  Foro: .NET.C# Cantidad:  Desde:   Hasta:    Aplicar   Responder 
Respuestas a: 40609 - Agregar referencia dinamicamente
IDAsuntoFechaNick 
40609 Agregar referencia dinamicamente21/04/08 14:13RaYWoLF   
Buenas!

Tengo una aplicación de escritorio que hace uso de una dll que necesita tener una llave usb ("mochila" lo llama alguna gente) para funcionar. El problema es que si esa llave no está enchufada saca un mensaje de error y salta esta excepcion:

"Error en una rutina de inicialización de biblioteca de vínculos dinámicos (DLL)."

Esto ocurre antes de utilizar ningún método de esa dll (en el momento de cargarla en memoria supongo), por lo que necesitaría que se cargase unicamente cuando un campo de la base de datos lo indicase. Mi duda es: ¿Es posible agregar referencias dinámicamente en tiempo de ejecución?

Un saludo y gracias de antemano guinio
IDAsuntoFechaNick 
40693 Re: Agregar referencia dinamicamente (Resp: 40609)23/04/08 15:47ht_soft   
No se si sea posiblble lo que dices, pero una forma de darle la vuelta es crear una clase que mande llamar a la que usas para tu trabajo, y encerrar dentro de un try catch la llamada
algo como lo siguiente:
Supongamos que claseUsb es la que te da el error...
Public Class InvocaUsb 
public sub new()
   try 
        'intentamos ejecutar el objeto:
        dim c as new claseusb()
   catch ex as exception
        'el proceso falló
   end try
end sub
End Class


Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias.
IDAsuntoFechaNick 
40715 Re: Agregar referencia dinamicamente (Resp: 40609)24/04/08 01:03archangelr_m   
El problema es que no encuentra la DLL no?

Si deseas cargar dinamicamente la DLL usa reflexion, si deseas cambiar de ubicacion tu DLL puedes usar un archivo de configuracion con el atributo CODEBASE para indicarle donde buscar tu DLL pero como la colocas en un dispositivo USB entonces la ruta puede variar


Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias.
IDAsuntoFechaNick 
40926 Re: Agregar referencia dinamicamente (Resp: 40609)29/04/08 10:50RaYWoLF   
Buenas. Lo primero de todo gracias a los 2 por las respuestas.

Al final lo he solucionado creando una clase que enmascare la llamada a la dll, tal y como dijo ht_soft.

Respecto a tu respuesta archangelr_m, creo que no me entendiste bien (o no me explique bien yo). No es que tuviese la dll en una memoria usb, sino que para poder llamar a métodos de esa dll es necesario tener enchufado un usb que detecta que has pagado la licencia para usar la dll, etc. Vamos que es un anticopia por decirlo de alguna manera. De todas formas me hago una nota mental con lo que contaste, que puede ser util en otras ocasiones guinio


Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias.

 
(c) Guillermo 'guille' Som, 2005-2026  - foros.elGuille v1.0.6.3 (01/Jun/2021 12:45 GMT +2)  - (ASP.NET v4.0.30319.42000)
 
La hora GMT del servidor es: 09/06/2026 13:58:07 GMT