Trabajar java con ddls a traves de jawin
Enero 8, 2009 nachxs Dejar un comentario Ir a los comentarios
0
0
Rate This
[pic]
Jawin es una de las tantas librerias que se puede utilizar para poder trabajar los metodos de una DLL desde java. Lo mas comun era trabajar con JNI pero esto implicaba tener los fuentes de la DLL para poder realizar las modificaciones y volver a realizar lacompilacion, algo tedioso en algunos casos.
Bueno una forma de utilizar esta libreria es creando una pequeña DLL en C con un metodo basico, por ejemplo el metodo “suma” que implica tener dos variables de entrada del tipo entero y retornar un valor entero. Para esto configuré NetBeans con el compilador gcc para poder desarrollar codigo en C/C++ siguiendo este manual, para luego crear un proyecto del tipo“C/C++ Dynamic Library”. Una vez creado este proyecto agrego un fuente al cual llamare “Suma.c” y dentro de este archivo creamos el metodo antes mencionado, quedando de la siguiente manera:
[pic]
Como veran es algo simple y basico, ahora solo nos queda construir la DLL, para esto click derecho sobre el proyecto y elegimos “Build”, y listo ya tenemos generada nuestra DLL.
Ahora para poder utilizar elmetodo de la DLL desde java, hacemos lo siguiente:
• Primero agregamos la libreria jawin al proyecto (jawin.jar)
• Luego segun nos indica la documentacion copiamos el archivo “jawin.dll” en el directorio “C:\windows\System32″.
Y listo ahora empezamos a escribir el codigo que llamaria al metodo, algo asi como esto:
[pic]
Como podran ver el nombre de mi DLL es “LibSuma.dll”, tener encuenta que el nombre de la dll lo da el nombre del proyecto(anteponiendose el sufijo “lib”, pero esto lo pueden variar en las propiedades del proyecto), y el metodo, en este caso “suma”; hago la invocacion dandole los parametros antes mencionados y en la variable “g” recepciono el resultado y listo.
[pic]
Cabe aclarar que yo puse solo el nombre de la libreria y no toda la ruta porque agregue laruta de mi libreria a mi PATH. Otra forma seria colocar la libreria generada en “C:\Windows\System32″; o de lo contrario colocan toda la ruta de la libreria incluida el nombre.
Como veran para este caso es algo sencilo de trabajar y no tan tedioso, yo ahora estoy en un proyecto algo mas grande trabajando con esta libreria y la verdad me esta dando resultados.
Ads by Google
Softek Barcode ReaderSDK
Read barcodes from images OCX COM .NET DLL JAVA from TIF/JPG/GIF/PDF
www.bardecode.com
Categorías:C/C++, Java, NetBeans Etiquetas: C/C++, Java, Jawin, Programacion, Windows
Comentarios (45) Trackbacks (1) Dejar un comentario Trackback
1. [pic]
DANIEL
Febrero 16, 2009 en 6:22 pm | #1
Responder | Cita
0
1
Rate This
[pic]
Graciaspor la info, pero porfavor, me podrias aclarar mas al detalle la ultima parte de donde ubicas la libreria DLL y como haci lo ubicas en el classpath. medio q no la capto. gracias.
o [pic]
nachxs
Febrero 16, 2009 en 7:01 pm | #2
Responder | Cita
0
1
Rate This
[pic]
Hola Daniel, claro, miracuando tu creas una DLL cualquiera, si quieres ejecutar o llamarla desde cualquier aplicacion tienes 3 opciones:
- La primera es colocar toda la ruta donde esta ubicada tu dll incluido el nombre en la invocacion en tu aplicacion
- La segunda forma es que la coloques en el PATH (Click derecho MI PC –>Propiedades–>Opciones Avanzadas–>Variables Entorno–>Variables de Sistema) laruta del directorio en donde tienes tu DLL (sin el nombre de la DLL) al final de todo el contenido, de esta forma cualquier aplicacion que haga la invocacion sabra donde encontrarla.
- Y la tercera es colocar tu libreria dentro del directorio C:\Windows\system32, dado que esta carpeta ya esta en la path por defecto.
en la 2 ultimas forma solo colocarias el nombre de la DLL...
Regístrate para leer el documento completo.