Actualizacion DLL en tiempo de ejecución

23/12/2009 - 14:24 por Paul P. Garcia | Informe spam
Saludos.
Es posible actualizar una DLL en tiempo de ejecución?
Me explico: Mi aplicación tiene que estar siempre en ejecución, no debe
cerrarce ni un segundo... mi aplicación usa varias DLL, pero no todas las
ocupa todo el tiempo y va existir en algun momento en el que debo actualizar
una DLL.
La DLL que quiero usar tiene eventos, metodos y propiedades. No se si es
posible liberarme por un momento de una DLL mientras se baja la nueva, una
vez bajada y actualizada, nuevamente hacer referencia a la DLL con todos sus
eventos, metodos y propiedades...

Mi propia aplicación bajara la nueva DLL...

Preguntas similare

Leer las respuestas

#1 RFOG
23/12/2009 - 15:59 | Informe spam
En .NET creo que no, salvo opinión más autorizada en contra.

En Win32 sí si la cargas a mano mediante LoadLibrary y luego obteniendo
los punteros a función...

On Wed, 23 Dec 2009 14:24:25 +0100, Paul P. Garcia
wrote:

Saludos.
Es posible actualizar una DLL en tiempo de ejecución?
Me explico: Mi aplicación tiene que estar siempre en ejecución, no debe
cerrarce ni un segundo... mi aplicación usa varias DLL, pero no todas las
ocupa todo el tiempo y va existir en algun momento en el que debo
actualizar
una DLL.
La DLL que quiero usar tiene eventos, metodos y propiedades. No se si es
posible liberarme por un momento de una DLL mientras se baja la nueva,
una
vez bajada y actualizada, nuevamente hacer referencia a la DLL con todos
sus
eventos, metodos y propiedades...

Mi propia aplicación bajara la nueva DLL...






Microsoft Visual C++ MVP => http://geeks.ms/blogs/rfog
?Que es lo que hay que hacer para que una mujer este contenta un sabado por
la noche?
Contarle un chiste el martes por la ma?ana.
Respuesta Responder a este mensaje
#2 Paul P. Garcia
23/12/2009 - 17:05 | Informe spam
Hola.
No comprendo muy bien tu respuesta.
LoadLibrary es una api de windows ¿no?
Es decir debo crear una aplicación Win32 (algo que no hace el .Net) y
cargarme una dll usando LoadLibrary?
Pero que tipo de DLL crea el .Net?

"RFOG" escribió en el mensaje
news:
En .NET creo que no, salvo opinión más autorizada en contra.

En Win32 sí si la cargas a mano mediante LoadLibrary y luego obteniendo
los punteros a función...
Respuesta Responder a este mensaje
#3 RFOG
23/12/2009 - 17:57 | Informe spam
On Wed, 23 Dec 2009 17:05:38 +0100, Paul P. Garcia
wrote:

Hola.
No comprendo muy bien tu respuesta.
LoadLibrary es una api de windows ¿no?



Sí, de Win32.

Es decir debo crear una aplicación Win32 (algo que no hace el .Net) y
cargarme una dll usando LoadLibrary?



Exacto.

Pero que tipo de DLL crea el .Net?




Pues... DLLs de .NET, ensamblados con código MSIL en lugar de nativo.

Pero ten en cuenta que .NET está encima de Win32. Es decir, con una DLL de
Win32 no tienes nada de .NET, sino de Win32, C y C++ de toda la vida.

Lo que no sé es si se puede hacer lo mismo con un ensamblado .NET con las
APIS de .NET. Yo creo que no, pero espera a ver si alguien que sepa más
del tema me contradice, porque tampoco estoy completamente seguro.

"RFOG" escribió en el mensaje
news:
En .NET creo que no, salvo opinión más autorizada en contra.

En Win32 sí si la cargas a mano mediante LoadLibrary y luego obteniendo
los punteros a función...








Microsoft Visual C++ MVP => http://geeks.ms/blogs/rfog
Los golpes de la adversidad son muy amargos, pero nunca son esteriles.
Respuesta Responder a este mensaje
#4 Sashka
23/12/2009 - 19:40 | Informe spam
Quizá esto te ayude (o aclare).
http://msdn.microsoft.com/es-es/lib...73101.aspx

Sashka

"Paul P. Garcia" escribió en el mensaje de
noticias:
Saludos.
Es posible actualizar una DLL en tiempo de ejecución?
Me explico: Mi aplicación tiene que estar siempre en ejecución, no debe
cerrarce ni un segundo... mi aplicación usa varias DLL, pero no todas las
ocupa todo el tiempo y va existir en algun momento en el que debo
actualizar una DLL.
La DLL que quiero usar tiene eventos, metodos y propiedades. No se si es
posible liberarme por un momento de una DLL mientras se baja la nueva, una
vez bajada y actualizada, nuevamente hacer referencia a la DLL con todos
sus eventos, metodos y propiedades...

Mi propia aplicación bajara la nueva DLL...

Respuesta Responder a este mensaje
#5 Javier Lozano
23/12/2009 - 21:19 | Informe spam
Hola,

Tal vez la solucion estaria en utilizar algun container IOC (Inversion of
Control) tipo Castle Windsor Container, revisa este link :
http://www.castleproject.org/container/index.html


Saludos

Javier Lozano
Lima-Peru


"Paul P. Garcia" wrote in message
news:
Saludos.
Es posible actualizar una DLL en tiempo de ejecución?
Me explico: Mi aplicación tiene que estar siempre en ejecución, no debe
cerrarce ni un segundo... mi aplicación usa varias DLL, pero no todas las
ocupa todo el tiempo y va existir en algun momento en el que debo
actualizar una DLL.
La DLL que quiero usar tiene eventos, metodos y propiedades. No se si es
posible liberarme por un momento de una DLL mientras se baja la nueva, una
vez bajada y actualizada, nuevamente hacer referencia a la DLL con todos
sus eventos, metodos y propiedades...

Mi propia aplicación bajara la nueva DLL...

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida