raul_sal:
Me parece que te convendría usar paquetes (
packages) en lugar de dlls ya que se acoplan más a Delphi. Al igual que los dll, los paquetes pueden cargarse dinámicamente en tiempo de ejecución.
Yo no te puedo decir mucho acerca de los paquetes ya que es un área que apenas empiezo a investigar pero para comenzar te puede servir leer la página
Dynamic packages in Delphi del sitio de Borland (quizá te pida que te registres pero es rápido y gratuito).
El artículo tiene que ver mucho con lo que deseas y justamente habla de la importancia de modularizar las aplicaciones con el fin, entre otros, de poder distribuir sólo las actualizaciones o agregados necesarios.
// Saludos