2011-12-15 2 views
1

У меня есть проект, который использует некоторые устаревшие COM-компоненты. Когда я включил их в качестве ссылок в проекте, я установил свойство Изолити True, чтобы удалить необходимость регистрации COM-компонентов.Почему мой файл манифеста не генерируется во время сборки TFS?

Когда я отлаживаю свою машину разработки, Visual Studio будет генерировать файл app.exe.manifest в папке bin. Это включает всю информацию реестра COM, как ожидалось.

Когда я принудию сборку из TFS, этого манифеста найти негде. Почему нет?

+0

Поскольку эти COM-компоненты не зарегистрированы на сервере сборки, я бы предположил. –

ответ

0

Это был довольно странный сценарий, когда MSBuild не смог найти сборки Interop и не мог генерировать файл манифеста для компонентов, которые он не мог загрузить. Некоторое время решение составляло компиляцию, что было странно. В конце концов, сборки не удались из-за дублирования GUID для каждой из сборщиков проектов. По-видимому, этот GUID используется только тогда, когда в проекте есть ссылки COM. После того, как все GUID проекта уникальны, проект компилируется и работает на сервере сборки. Не знаю, почему GUID не были уникально созданы в первую очередь.

Смежные вопросы