Интересно, а можно сделать что бы EXE файл работал и как EXE и как библиотека? Только вот как определить что файл загружен как dll а не как exe? в entry point проверять второй параметр на 0 - (HINSTANCE hPrevInstance = 0 в Win32 системах) если EXE и на 1, 2, 3, 4 если DLL то DLL_PROCESS_ATTACH. Кто-нибудь пробовал? Если на то пошло, то можно драйвер совместить с EXE ?
Я думаю никаких не должно быть проблем при условии того, что EXE должне содержать таблицу с релоками. Юзермодная DLL и драйвер это вообще-то совершенно разные вещи )