¿ cómo es que CCleaner sabe que esos DLL son huérfanos y no son utilizados por ningún programa instalado?
por que los comprueba el registro que se tiene de las DLL y uso con otras aplicaciones (RegSvr32).
¿ Cómo CCleaner sabe que ese valor nulo agregado en el registro pertenece o no a un programa no comercial que use esas referencias? Que hago, escribo a CCleaner para que creen una regla? Porque debería de yo preocuparme de eso?
revisando rutas, por ejemplo supongamos que tenias una aplicación en "C:\Program Files\App1" la cual tenia cierto parámetros de configuración en registro asociados a un ejecutable o a un dll en dicha ruta, y luego por X motivo desinstalaste la aplicación,
pero la carpeta C:\Program Files*App1*" quedo vacía, entonces CCleaner detectara que hay opciones de configuración en el registro de una aplicación que ya no existe en dicha ruta o llamadas a dll que habían en dicha carpeta y que ya no existen,
y entonces te ofrecerá la posibilidad de eliminarlas.
desde allí en adelante tú eres quien decide si eliminar esas claves del registro o no, CCleaner antes te mostrara los resultados en una lista, y tu allí puedes ver detallado que fue lo que encontró antes de proceder.
¿ Porque debería de yo preocuparme de eso?
por que el registro es una base de datos, y su eficiencia depende que sus índices y datos validos contenidos en esta, en cambio si tienes datos de cosas que no tienen algún uso o no son validos, lo único que haces es incrementar el peso de la base de datos,
provocando que la base de datos se haga mas lenta o que Windows continúe pidiendo solicitudes de cosas que ya no existen cuando inicia, entre otros problemas.
de hecho, esta es una de las razones principales de que en Windows 10 se haya incorporado por parte de Microsoft, una tarea dedicada para mantenimiento, que se encarga de limpiar automáticamente algunas cosas sin uso en el sistema, y optimizar.