У кого-нибудь есть статья, как это сделать?
Как я могу создать драйвер, используя визуальную студию?
Ответ 1
Поскольку вы не дали точной версии Visual Studio, позвольте мне дать вам варианты, о которых я знаю.
Visual Studio 2012, 2013 и 2015
Соответствующие современные версии DDK/WDK: WDKs 8, 8.1 и 10 (начиная с этой записи).
С WDK для Windows 8 команда WDK в Microsoft наконец предлагает полную интеграцию с Visual Studio снова из Microsoft.
Однако, хотя Visual Studio 2017 существует в младшей версии 15.4 уже к моменту этого обновления, WDK по-прежнему требует Visual Studio 2015.
Visual Studio с 2002 по 2010 год
Соответствующие современные версии DDK/WDK: DDK для Windows XP/2003 Server, WDK для Windows Vista и Windows 7 с соответствующими уровнями пакета обновления и соответствующими версиями серверов.
Эти версии были не официально поддерживаются Microsoft для создания драйверов. Единственный худший выбор для компиляции драйвера - это полная сторонняя инструментальная цепочка (кроме компилятора Intel C, который был санкционирован MS, IIRC).
В течение этого периода считалось очень плохой формой использования компиляторов Visual Studio, и Microsoft явно рекомендовала против нее. Тем не менее, С++ в режиме ядра также был нахмурился, и теперь MS предоставляет фреймворки С++ для режима ядра. Время, когда они меняются...;)
Во всяком случае, обходные пути существуют в форме ddkbuild.bat
и ddkbuild.cmd
, которые используют инструментальную цепочку DDK, но эффективно позволяют интегрировать полученный вызов из вашего проекта "make" внутри Visual Studio. DDKWizard - это мастер создания проекта для обоих этих скриптов. DDKWizard поддерживает не Visual Studio 2010! Ссылки на два сценария обеспечивают хорошую документацию, и DDKWizard также поставляется с достойной документацией.
Насколько мне известно, ddkbuild.cmd
изначально основывается на ddkbuild.bat
, а версия HollisTech также может отследить свое наследие до этой версии из OSR.
VisualDDK в сочетании с VirtualKD появился позже, чем упомянутый выше, но должен считаться более совершенным, более сложным решением. Но ваш пробег может отличаться. В любом случае интеграция в Visual Studio гораздо более полна в последнем решении.
Visual Studio 6
Соответствующие современные версии DDK/WDK: DDK для Windows NT 4 и Windows 2000.
До Windows XP DDK (теперь DDK называется WDK) компилятор не был включен в DDK, поэтому вам нужно было установить набор инструментов компилятора. Это будет иметь место для NT 4.0 и Windows 2000.
Ответ 2
Загрузите и установите VisualDDK, и вы сможете создавать проекты драйверов и отлаживать драйверы непосредственно из Visual Studio.
Ответ 3
Если вы хотите использовать DDK build
и WDK, используйте ddkbuild.bat
, это довольно хорошо (я думаю, что большинство из них работает все еще), которые должны были вам идти. В качестве альтернативы можно проверить ddkbuild.cmd
из OSR.
Ответ 4
ddkbuild из OSR-Online - хорошая альтернатива ссылка для скачивания ddkbuild.
Ответ 5
создайте проект make файла и в качестве команды сборки используйте следующую команду:
pushd .
call C:\WinDDK\7600.16385.1\bin\setenv.bat C:\WinDDK\7600.16385.1\ chk x86 WXP no_oacr
popd
build -cgwiz
(очевидно, подгонять аргументы для setenv)
Ответ 6
Чтобы создать мой драйвер, я использовал VisualDDK в visual studio 2008. Вначале я начинаю отладку с помощью моего компьютера и машины VirtualBox, но когда я запускаю процесс отладки в visual studio, моя виртуальная машина не показывала мне внешний ip-адрес ( обычно должен показывать мне 192.168.1.102 и 10.0.1.15 в DDKLauncherMonitor, но он показывает мне только 10.0.1.15).
Я прекратил использование виртуальной машины, и я решил использовать настоящий компьютер. На втором компьютере я запустил DDKLauncherMonitor. И я начинаю отладку с моего первого компьютера. Я получил Udp-пакет на моей второй машине, а также на driver.sys. Но когда я попытался загрузить драйвер из visual studio (первый компьютер), ничего не получилось. Плюс это, во второй машине скажите мне, что "Windows требуется драйвер с цифровой подписью".
Существует один и тот же подход к решению этой проблемы, и он может помочь.
Ответ 7
В VS создайте проект make файла. Добавьте свои источники, заголовки, makefile и исходный файл. Откройте свойства проекта → Свойства конфигурации → NMake- > Стройте командную строку и напишите:
call $(WINDDK)\bin\setenv.bat $(WINDDK) fre wnet
cd /d $(ProjectDir)
build.exe -I
Теперь вы можете строить из VS. Преимущество проекта make файла: он предоставляет вам столько конфигураций, сколько вам нужно (w2k, wxp, wnet, wlh и т.д.), И вы можете построить из командной строки DDK.
P.S.
fre wnet
- это образец конфигурации, используйте то, что требуется для вашего проекта. Хорошо иметь конфигурации fre
и chk
.
WINDDK - переменная среды с пути к корню DDK.