¿Cómo puedo copiar / reemplazar una DLL?

Tengo una utilidad que actualiza las aplicaciones simplemente copiando / reemplazando los ejecutables. Ahora, tengo algunos archivos DLL que necesitan ser actualizados también. Sin embargo, a veces Windows no me deja reemplazarlo porque algo lo está usando, y a veces hay tantas cosas usando el DLL que no puedo garantizar que se desbloquee para que yo lo reemplace.

Actualmente, mi única alternativa es cambiar el nombre de la DLL existente primero, y luego puedo copiar la nueva en su lugar. Pero luego la DLL vieja se queda atrás con un nombre de archivo alterado.

¿Cómo puedo reemplazar un DLL programáticamente en esta situación?

Respuestas a la pregunta(1)

Su respuesta a la pregunta