вторник, 5 апреля 2011 г.

[prog.question] Нужны ли манифесты для VisualStudio 2010?

Пришло время добавить в Mxx_ru поддержку VisualStudio 2010. И встал вопрос: а нужны ли C++ным программам, скомпилированным VS2010, манифесты?

Манифесты были введены в VS2005 как очередной изврат Microsoft-а. Поскольку в MS решили, что негоже разрешать приложениям укладывать C/C++ runtime dll-ки прямо в свой каталог. Пришлось добавлять поддержку манифестов в Mxx_ru.

Теперь, насколько мне известно, в VS2010 отказались от ограничений по распространению C/C++ runtime dll. Можно их просто кинуть в каталог с программой и все будет работать так же хорошо как и в старой-доброй VS2003. Но поддержка манифестов в VS2010 оставлена (и инструмент mt есть, и файлы-манифестов он в приложение встраивает).

Вот я и в размышлениях: нужно ли в toolset-е Vc10 в Mxx_ru оставлять поддержку манифестов (например, для совместимости с тулсетами Vc8 и Vc9) или же нет.

Может кто-нибудь подсказать, обязательно ли использование файлов-манифестов при сборке C/C++ приложений в VisualStudio 2010?

4 комментария:

NN​ комментирует...

Манифесты нужны для других Side-by-Side.
Скажем для GUI приложения нужен Common Controls который только через манифест идет.

eao197 комментирует...

@NN:

Т.е., насколько я понял, лучше поддерживать манифесты. Чтобы при разработке GUI не создавать проблем.

Rustam комментирует...

Для рантайма то есть crt'шных dll не нужно. Но как говорили выше, есть и другие применения, например для висты и выше в них можно задавать requestedExecutionLevel для управления UAC и требуемые привелегии при выполнении приложения. Так что лучше оставить.

eao197 комментирует...

@Rustam:

Спасибо!