2013-05-19 3 views
3

У нас есть драйвер принтера, который нам нужно построить для всех ОС от Windows XP до Windows 8, как для x86, так и для x64. Я могу сделать это вручную, используя среду свободной сборки WDK, но мне нужно автоматизировать процесс - запустить пакетный скрипт и подготовить все мои сборки.автоматизация сборки драйверов Windows

Кто-нибудь знает, как это сделать?

+0

Если вы используете VS2012, вы можете создать из командной строки с 'MSBuild.exe' сейчас - см http://msdn.microsoft.com/en-us/library/windows/ hardware/ff554644 (v = vs.85) .aspx –

+0

Я использую VS2012 для драйверов Win8, потому что я должен, но я предпочитаю не использовать его для всего, если это возможно. – user884248

+0

Хорошо, но если вы * его используете *, вы можете легко написать пакетный скрипт, чтобы делать все ваши сборки. Я не знаю, как это сделать с помощью инструментов сборки WDK, хотя, извините. –

ответ

1

Окна командной строки для x86/x64 Отладка/выпуск и различные платформы ОС отличаются только переменными окружения. Сценарии, устанавливающие переменные среды, уже доступны в DDK или Visual Studio. (Чтобы узнать имена сценариев, проверяйте свойства ссылок на командные окна команд.) Таким образом, проблема сводится к написанию переменных среды установки пакетного файла Windows и одновременному вызову команд сборки. Скорее всего, переменные среды для каждой следующей платформы перезаписывают предыдущую платформу, но чтобы быть в безопасности, вы можете начать каждую сборку в отдельном чистом процессе cmd.exe. Вот основной сценарий:

start /W "cmd /C build_winxp_x86_debug.cmd" 
start /W "cmd /C build_winxp_x64_debug.cmd" 
... 
start /W "cmd /C build_win8_x86.cmd" 
start /W "cmd /C build_win8_x64.cmd" 

Start/ш ждет породившей cmd.exe завершения процесса перед выполнением следующей строки. Cmd/c завершается, когда завершается соответствующий скрипт сборки. Пример сценария сборки:

@rem Script setting environment variables from DDK 
ddkpath\setenv.bat XP x86 dbg 
@rem your build commands 
cd your_driver_dir 
build -cz 
Смежные вопросы