Foros del Web » Programación para mayores de 30 ;) » .NET »

[SOLUCIONADO] No puedo añadir librería a proyecto

Estas en el tema de No puedo añadir librería a proyecto en el foro de .NET en Foros del Web. ¡Necesito ayuda desesperadamente! Resulta que para que mi proyecto funcione necesito añadir una libreria (para ser mas esactos esa libreria es eztw32.dll). El caso es ...
  #1 (permalink)  
Antiguo 13/05/2013, 05:09
 
Fecha de Ingreso: abril-2013
Mensajes: 37
Antigüedad: 11 años
Puntos: 1
No puedo añadir librería a proyecto

¡Necesito ayuda desesperadamente!

Resulta que para que mi proyecto funcione necesito añadir una libreria (para ser mas esactos esa libreria es eztw32.dll).

El caso es que yo sigo el mismo procedimiento para añadir libreria que he seguido (yo y todo mortal), ir a proyecto, addreference, explorar, darle al dll que queremos añadir. Si,l ya lo hice, pero me salta un error al darle al ok.


Error: A reference to (ruta donde esta el dll) could not be added. Please make sure that the file is accesible, and that is a valid assembly or COM component.

Traducido: No se pudo agregar una referencia a (ruta Donde esta el dll). Por favor, asegúrese de que el archivo es accesible, y que es un ensamblado válido o un componente COM.


La dll la he descargado de 17 sitios diferentes, y siempre me sale el mismo mensaje.

Si alguien puede ayudarme se la agradeceria.

PD: uso visual studio 2010 (vb.net, no C#, ni asp.net, ni visual basic, uso vb.net)

Si podeis decirme donde encontrar la dll que funcione se lo agradeceria (es que estoy usando tecnologia eztwain (codigos de control de escaneres) y no encuentro un eztwain pro de esos gratis (hay uno gratuito oficial de la pagina pero es un engaño, esta mal exo)). Asi que ya que tengo el codigo, solo necesito la dll.

Agradeceria cualquier ayuda.
  #2 (permalink)  
Antiguo 13/05/2013, 05:20
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: No puedo añadir librería a proyecto

El método que describes solo funciona para librerias de .NET. La liberia que intentas agregar es nativa y por eso te falla.

Lo que tendrías que hacer es una librería en .NET que llame a la libreria COM (eztw32.dll) y esta última libreria (la que hagas tú en .NET) agregarla al proyecto. Aqui tienes una pequeña guía:

http://msdn.microsoft.com/en-us/library/ms404285.aspx

Espero que esto resuelva tu duda de porque falla :)
__________________
Aviso: No se resuelven dudas por MP!
  #3 (permalink)  
Antiguo 13/05/2013, 10:22
 
Fecha de Ingreso: abril-2013
Mensajes: 37
Antigüedad: 11 años
Puntos: 1
Respuesta: No puedo añadir librería a proyecto

Gracias, la idea es buena.

Pero: me podrias decir como puedo llamar a una dll desde una dll mia propia?

Es que no soy muy veterano en esto de vb.net, y no se como hacerlo, jaja

Agradeceria la explicacion (ya cree una dll propia y eso, pero como realizo lallamada a la otra dll??)


De antemano gracias (si funciona me habras salvado la vida y el empleo, jaja)
  #4 (permalink)  
Antiguo 13/05/2013, 12:59
 
Fecha de Ingreso: mayo-2013
Ubicación: Oaxaca de Juarez, Oaxaca
Mensajes: 7
Antigüedad: 10 años, 11 meses
Puntos: 1
Respuesta: No puedo añadir librería a proyecto

Hola,

Podrías intentar cargarla así:

[<DllImport("kernel32.dll", EntryPoint="CopyFile")>]
extern bool copyfile(char[] lpExistingFile, char[] lpNewFile, bool bFailIfExists);


Espero te sirva,

Saludos.

Última edición por Malenko; 14/05/2013 a las 02:34
  #5 (permalink)  
Antiguo 14/05/2013, 02:25
 
Fecha de Ingreso: abril-2013
Mensajes: 37
Antigüedad: 11 años
Puntos: 1
Respuesta: No puedo añadir librería a proyecto

Que te iva a decir? Ah si, que en que lenguaje esta eso?

Yo por el momento uso vb.net

Jaja, lo puse tal y como seria en vb.net :
<DllImport("EZTW32.dll", EntryPoint="CopyFile")> _
extern bool copyfile(char[] lpExistingFile, char[] lpNewFile, bool bFailIfExists)
Y me salta error en DllImport: dice que el tipo no esta definido (vamos, que no sabe lo que es DllImport, y no se por que, porque en otras ocasiones lo he visto asi, como tu has dicho).

Gracias de antemano.
  #6 (permalink)  
Antiguo 16/05/2013, 03:40
 
Fecha de Ingreso: abril-2013
Mensajes: 37
Antigüedad: 11 años
Puntos: 1
Problemas con EZTW32.dll

Hola foro.

Pues resulta que tengo un problemon con esto.

Veran, estoy programando en vb.net (utilizando visual studio 2010).

Mi programa lo que hace es escanear. Para ello utilizo la libreria de eztwain (desarrollada por dosadi), prove primero con las versiones de prueba de los toolkit (para ver si era lo que necesitaba y generar el codigo), y me funcionaba de maravilla. Al acabarse el periodo de prueba me puse a descargarme las dll de EZTW32.dll gratuitas para seguir funcionando, pero al parecer no estaban hechas en .net si no en c# o c++ (asi que no podia añadirlas al proyecto, el cual me denegaba el acceso a estas dll (normal, el es .net, no quiere otro lenguaje de por medio)).

Al final, tras mucho buscar (y preguntar) en un foro me pasaron un link donde podia hacerme con la libreria EZTW32.dll gratis y la version .net :

el link:

www.c-sharpcorner.com/uploadfile/progalex/getting-images-from-scanners-and-webcams-using-vb-net/

Y me descargue lo que venia (muy util, todo bien explicado(pero yo no me entero ni de la mitad)), pero al intentar usar el ejemplo que qui viene me saltaba un error: no encontraba la dll EZTW32.dll (normal, borre todas las dll de eztwain que tenia anteriormente), y curiosamente en el paquete del ejemplo venia una dll llamada Eztwain_Libreria.dll (EZTW32.dll pero con el nombre cambiado).

Bueno, pues hice las modificaciones pertinentes para que mi proyecto añadiera esta dll que me venia y para que mi codigo la usase (vamos, que le cambie el nombre de Eztwain_Lbreria.dll por EZTW32.dll, y asi no tener que modificar el codigo).

Me lo acepta (me añade la libreria), PERO (y aqui viene lo gordo) al ejecutar el programa, me salta un error: la clase encargada de llamar a la dll (que se encarga de importarla y usarla) salta en cada metodo que yo este utilizando (si quiero escanear salta error en linea de escaneo etc.), diciendo que : No se pudo encontrar el punto de entrada denminado 'Twain_AcquireToFilename' en el archivo Dll 'EZTW32.dll'.

Vamos, ¿¿¿¿que la dll no tiene para escanear????

Y luego me doy cuenta de que la dll tiene un tamaño de 28 KB, la comparo con las que use anteriormente y estas tienen todas 64 KB (vamos, que la que viene en el paquete no tiene ni la mitad de las cosas que las otras).

El tio asegura que esa dll funciona, y que si no la pillo que la coja la gratuita de dosadi (yo ya la tenia, pero es que no me iva, no puedo añadirla a mi proyecto, por lo tanto los metodos no pueden usarla).


Mi pregunta: ¿alguna sugerencia?

Etiquetas: net, vb
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:25.