Я пытаюсь обновить наш процесс сборки, чтобы он подписывал код всех сборок и установщиков:
1) Сборка всех проектов
2) Подпишите свои выводы
3) Сборка инсталляторов (msi, с установочными проектами VS2010)
4) Войти установщикам
Проблема, с которой я столкнулся, заключается в том, что на шаге 3 установщик-проект берет основной вывод из папки obj. Но на шаге 2 я беру выходные данные MSBuild-Task, и они находятся в папке bin. Таким образом, у меня есть неподписанный первичный вывод в моем MSI.
MSBuild-вызов:
<MSBuild Projects="%(SolutionFiles.FullPath)" ContinueOnError ="false" Properties="Configuration=$(BuildConfiguration)" Targets="Build">
<Output TaskParameter="TargetOutputs" ItemName="AssembliesBuildByChildProjects"/>
</MSBuild>
Подпись работает с cmd-файлом:
<Exec
Command=""$(SignPath)signcode.cmd" "%(AssembliesBuildByChildProjects.Fullpath)" /t"
WorkingDirectory="$(SignPath)" />
Спасибо