Для создания драйверов режима ядра (kernel mode) ОС Windows, нужна немного модифицированная версия среды PureBasic.
Размер не очень большой, чуть больше 2 МБ.
Версия для создания драйверов для Windows x86 (32 бита). http://pure-basic.narod.ru/forum_files/ … Driver.zip
Версия для создания драйверов для Windows x64 (64 бита). http://pure-basic.narod.ru/forum_files/ … er_x64.zip
Это бесплатная демо версия PureBasic 4.61, скачанная с официального сайта и немного доработанная - добавлены некоторые файлы, необходимые для создания и компиляции драйверов (DDK и др.) и удалено все что нельзя использовать в режиме ядра. С ее помощью можно создавать только драйверы. Если вы хотите создавать программы, то качайте PureBasic с официального сайта.
Так же удалена справка. Если она вам нужна, скачайте ее и поместите в папку с PureBasic.
Скачиваем архив и распаковываем в любую папку.
Запускать среду следует с помощью файла "PureBasic Portable.exe".
Драйвер создается довольно просто, без возни батниками или командной строкой. Нужно всего лишь в меню "Компилятор" щёлкнуть по пункту "Создать драйвер" и если в коде нет ошибок, то драйвер будет создан в указанном месте.
В меню "Инструменты" есть несколько внешних инструментов. Это Dbgview, KmdManager и HDasm.
Первый используется для отладки драйверов. Он отображает сообщения, переданные функцией DbgPrint().
Второй так же нужен для отладки, при тестовом выполнении драйверов.
Третий это дизассемблер, который возможно понадобится при оптимизации драйверов. Нужно отметить, что для того чтобы посмотреть ассемблерный код драйвера вовсе не обязательно его дизассемблировать. После каждой удачной компиляции в папке Temp текущего пользователя будет появляться файл с именем DrPureBasic.asm, содержащий ассемблерный код драйвера в том виде, в котором он передается ассемблеру FASM.
Так же есть возможность простой замены DOS-заглушки. В папке Compilers находится файл stub.bin, который является такой заглушкой. Его можно заменить на свой или вообще удалить из этой папки, если нужна DOS-заглушка по умолчанию.
PS.
Ни я не создатели PureBasic не несем ответственность за возможную потерю данных и т. д. из-за сбоев при создании и отладке драйверов.