Funciones globales en VB.NET???

16/12/2003 - 16:26 por Mariano | Informe spam
Me gustaría saber cómo generar una DLL en VB.NET en la que
haya funciones globales que puedan usarse sin que haya que
crear un objeto.

En VB6 podía hacerse con una clase, que tuviera la
propiedad Instancing puesta a "Global Multiuse", pero no
tengo ni idea de cómo puede hacerse en VB.NET.

Por ejemplo, tengo en una DLL una clase
llamada "Funciones", con funciones de texto que me
permiten, por ejemplo, poner el carácter "\" al final de
una ruta (si dicha ruta no lo lleva, claro). Esta función
se llama "ARuta", y en un programa de VB6 puedo escribir

MsgBox ARuta("c:\temp")

sin que el IDE me avise de que tengo que crear un objeto
de la clase "Funciones". No sé si me he explicado con
claridad. El caso es que si lo intento en VB.NET, tengo
que crear un objeto de tipo "Funciones", y acceder a esas
funciones a través de dicho objeto.

Por ejemplo, para hacer lo mismo de antes tendría que
escribir:

Dim NuevoObjeto as new Funciones
MsgBox NuevoObjeto.ARuta("c:\temp")
NuevoObjeto = Nothing

¿Alguien me puede explicar cómo se puede conseguir
escribir este tipo de funciones en VB.NET?

Gracias
 

Leer las respuestas

#1 Guillermo guille
16/12/2003 - 17:52 | Informe spam
hola,

Inserta esas funciones dentro de un módulo (Module) en lugar de una clase
(Class).
Si ese módulo está en otro espacio de nombres, haz una importación de dicho
espacio de nombres y funcionará.

Nos vemos.
Guillermo
Microsoft VB MVP desde 1997
Te invito a mi sitio dedicado al VB y más...
http://www.elguille.info/ (en construcción)
http://www.mundoprogramacion.com/
(puede que el correo usado sea anti-spam)


"Mariano" wrote in message
news:0c4101c3c3e9$0bd99130$
Me gustaría saber cómo generar una DLL en VB.NET en la que
haya funciones globales que puedan usarse sin que haya que
crear un objeto.

En VB6 podía hacerse con una clase, que tuviera la
propiedad Instancing puesta a "Global Multiuse", pero no
tengo ni idea de cómo puede hacerse en VB.NET.

Por ejemplo, tengo en una DLL una clase
llamada "Funciones", con funciones de texto que me
permiten, por ejemplo, poner el carácter "\" al final de
una ruta (si dicha ruta no lo lleva, claro). Esta función
se llama "ARuta", y en un programa de VB6 puedo escribir

MsgBox ARuta("c:\temp")

sin que el IDE me avise de que tengo que crear un objeto
de la clase "Funciones". No sé si me he explicado con
claridad. El caso es que si lo intento en VB.NET, tengo
que crear un objeto de tipo "Funciones", y acceder a esas
funciones a través de dicho objeto.

Por ejemplo, para hacer lo mismo de antes tendría que
escribir:

Dim NuevoObjeto as new Funciones
MsgBox NuevoObjeto.ARuta("c:\temp")
NuevoObjeto = Nothing

¿Alguien me puede explicar cómo se puede conseguir
escribir este tipo de funciones en VB.NET?

Gracias

Preguntas similares