viernes, 25 de junio de 2010

Crear libreria .dll en vb.net y como utilizarla

Muchas veces nos encontramos ante un problema, creamos un codigo que utilizamos frecuentemente en todos nuestros proyectos, y es algo tedioso tener que estar incluyendo el codigo en cada aplicación, por esto y gracias a las librerias .dll podemos dar una solución a este problema.
Pasos para crear la libreria:
Creamos un nuevo proyecto en Visual Studio, para este caso lo crearemos en el lenguaje visual basic.net, luego seleccionamos que sea un proyecto 'Class Library', dejo una captura para que se den una idea mas clara:

Luego ya dentro del proyecto, modificamos el nombre de la clase por uno mas significativo, para este ejemplo yo le llame a la clase "operaciones_basicas"
y el encabezado de la clase quedaria de la siguiente manera:
Public Class operaciones_basicas
Paso seguido creamos las funciones que deseamos, para este ejemplo yo realice las cuatro operaciones basicas, ademas de esto hice que recibieran dos parametros de tipo Object, ya que asi podra recibir valores de cualquier tipo(integer, string, double), y estas funciones retornan un valor igualmente Object, el siguiente es el codigo completo de la clase "operaciones_basicas":
Public Class operaciones_basicas

Public Shared Function sumar(ByVal num_uno, ByVal num_dos) As Object
Dim resultado
resultado = num_uno + num_dos
Return resultado
End Function

Public Shared Function restar(ByVal num_uno, ByVal num_dos) As Object
Dim resultado
resultado = num_uno - num_dos
Return resultado

End Function

Public Shared Function multiplicar(ByVal num_uno, ByVal num_dos) As Object
Dim resultado
resultado = num_uno * num_dos
Return resultado

End Function

Public Shared Function dividir(ByVal num_uno, ByVal num_dos) As Object
Dim resultado
resultado = num_uno / num_dos
Return resultado

End Function



End Class

Como pueden observar yo declare las funciones compartidas Public Shared Function,para asi lograr el acceso a estas funciones.
Ya para este punto tenemos la libreria completa, solo restara compilar e implementarlo en los proyectos deseados.
En mi caso realice un proyecto sencillo, un form con 2 textbox y cuatro botones:

Luego hay que agregar la referencia de nuestra dll en nuestro proyecto, y paso seguido en nuestro codigo indicar que importe nuestra libreria al proyecto:
Imports nombre_de_la_libreria.nombre_de_la_clase, en mi caso la importo de la siguiente manera Imports libreria_matematica.operaciones_basicas
,y paso seguido unicamente resta llamar cada función que usted desee y poseea la libreria que usted creó, aqui les dejo el código en el cual implemento todas las funciones que realice en la clase "operaciones_basicas":

Imports libreria_matematica.operaciones_basicas
Public Class Form1


Private Sub btn_sumar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_sumar.Click
If IsNumeric(txt_num_uno.Text) = True And IsNumeric(txt_num_dos.Text) = True Then
Dim num_uno As Double = txt_num_uno.Text
Dim num_dos As Double = txt_num_dos.Text
lbl_resultado.Text = sumar(num_uno, num_dos)
Else
lbl_resultado.Text = sumar(txt_num_uno.Text, txt_num_dos.Text)
End If


End Sub

Private Sub btn_restar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_restar.Click
lbl_resultado.Text = restar(txt_num_uno.Text, txt_num_dos.Text)

End Sub

Private Sub btn_multiplicar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_multiplicar.Click
lbl_resultado.Text = multiplicar(txt_num_uno.Text, txt_num_dos.Text)

End Sub

Private Sub btn_dividir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_dividir.Click
lbl_resultado.Text = dividir(txt_num_uno.Text, txt_num_dos.Text)

End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub
End Class

Aqui les dejo el proyecto completo: http://www.mediafire.com/?emnjnjuwmzj, y si tienen alguna duda simplemente mandar un email a jechu1@racsa.co.cr o dejar un comentario en el blog.

7 comentarios:

  1. gracias me salvaste la vida y ahora si que comprendo lo que es una librería...


    Suerte con tu trabajo! -_-

    ResponderEliminar
  2. Hola, me puedes ayudar. Debo crear una DLL VS.net 2010, ya realizado en donde envio parametros y me devuelve un valor, pero como se puede crear una DLL pero que me devuelva varios valores. como se hace?.

    ResponderEliminar
  3. Muy practico tu ejemplo y bien explicado...

    ResponderEliminar
  4. Muy bueno tu ejemplo, sencillo y comprensible a la primera, Felicidades!!!...

    ResponderEliminar
  5. Gracias compañero muy sencillo para aprender :)

    ResponderEliminar
  6. En la función debes pasar una variable referencia y asi puedes obtener luego su valor.

    ResponderEliminar
  7. No fui claro utiliza byRef en lugar de byval

    ResponderEliminar