Нет никакого способа сделать это чисто, не попросив пользователя выйти из системы.
Если есть программный доступ для выключения панели инструментов, вы можете внедрить некоторый код в каждый процесс проводника, в который загружена ваша dll, и отключить панель инструментов, а затем вызвать CoFreeUnusedLibraries (все еще несколько взломанный, но вам не придется убивать процессы)