Можно ли сделать так, чтобы приложение, загрузившее
библиотеку с системной ловушкой(Hook), завершилось,
а библиотека оставалась быть загруженной и ловушка работала?
И если можно то как?
Когда приложение завершается, heap-manager @#$ит весь сегмент памяти, отведенной приложению, а именно там и находился код подгруженнй Dll. Так вот пока этого не проихошло, dll должна породить процесс который бы не являлся дочерним по отношению к текущему приложению. Самое простое сделать ShellExecute. Ели нечему делать ShellExecute, dll должна позаботиться о создании гадкого exe-шничка. То есть у dll должна иметь этот код (в виде обычногых данных), который в нужный момент будет експортирован в вредительский файл.
Успехов.