MSBuild не может правильно построить проект Windows CE, в то время как devenv делает - PullRequest
0 голосов
/ 17 мая 2018

Я унаследовал кучу скриптов сборки и переработал их. Одна из вещей, которые я изменил, - позволить MSBuild обрабатывать файлы решения, а не позволять Visual Studio devenv.exe создавать их. Часть наших сборок - это проекты Compact Framework 3.5, ориентированные на Windows CE. Последняя версия Visual Studio, поддерживающая это, - VS2008.

Мне удалось заставить MSBuild 3.5 собрать решения, которые были ранее построены с использованием devenv.exe в Visual Studio 2008. И они, похоже, строят просто отлично. Пока я не разверну их на устройстве Windows CE и не запустите их. Затем я получаю исключения, которые, кажется, не имеют никакого смысла: MissingMethodException или TypeLoadException. Все ссылки там и в курсе. Мне потребовалось некоторое время, чтобы понять, что проблема в MSBuild. Повторное использование devenv.exe устраняет проблему.

Я полагал, что файлы решения - это файлы MSBuild, и вся информация, необходимая для правильной сборки файла решения, находится в этом файле решения и файлах проекта, на которые он ссылается. И все же VS2008 делает это лучше.

Что происходит? Почему я не могу использовать MSBuild? Или я могу? Где MSBuild облажался?

...