У меня есть решение Visual Studio 2010 с несколькими проектами С# и проектами WiX. Я указываю свой порядок сборки через ссылку на проект, потому что я использую MSBuild для сборки своего проекта. Использование ссылок на порядок сборки не будет работать, поскольку они работают только в файле решения.
У меня следующая проблема: я пытаюсь добавить проект C#, который я хочу построить ПОСЛЕ моего проекта WiX. Поэтому я пытаюсь добавить ссылку на проект из моего csproj в мой пакет wixproj. Однако я получаю следующие ошибки:
Когда я пытаюсь добавить ссылку на проект wix с выводом .MSI: «Не удалось добавить ссылку на« installerproj ». Сборка должна иметь расширение «dll» или «exe», чтобы на нее можно было ссылаться». -> Я не могу добавить эти ссылки.
Когда я пытаюсь добавить ссылку на проект wix с выводом exe (комплектом): «Произошла проблема чтения метаданных из файла installeroutput.exe («Была предпринята попытка загрузить программу с неправильным форматом»). Intellisense может не работать должным образом, пока решение не будет перезагружено». -> Перезагрузка не помогает, сборка выдает аналогичную ошибку ("фатальная ошибка CS0009: не удалось открыть файл метаданных "installeroutput.exe" -- "Была предпринята попытка загрузить программу с неверным форматом".") .
Так что я могу жить без возможности добавить ссылку на мой вывод .msi wixproj, но я хочу иметь возможность добавить ее в свой пакет. Это возможно?
Обратите внимание, что ссылки между .wixproj работают нормально, а также между .wixproj и .csproj. Только не наоборот.
Если есть другой способ убедиться, что мой проект C# будет собран после моего проекта пакета wix, я могу работать и с ним, но он должен работать как из командной строки MSBuild, так и из файла .sln.