Я искал в Интернете информацию об этом и не могу прийти к безопасному выводу, не найдя механизма, на котором не установлена ни одна из CRT-библиотек.Мое приложение очень маленькое, и я не хочу обременять пользователей потенциально раздутыми установками или появлением ненужных загружаемых материалов.
Я испытываю желание включить 220kb msvcm90.dll (CБиблиотека импорта времени выполнения скомпилирована как 100% чистый код MSIL. Весь код соответствует спецификации ECMA URT для MSIL) и 2 КБ Microsoft.VC90.CRT.manifest в каталоге приложения.Но http://msdn.microsoft.com/en-us/library/abx4dbyh%28v=VS.90%29.aspx, утверждает, что теперь они хранятся в глобальном кэше сборок.
Может кто-нибудь проверить, пожалуйста, мое предлагаемое решение?
Многое из того, что я сказал, подкрепленок этому сообщению распространяемые Visual C ++ без использования VCRedist_x86.exe , но, хотя у него есть возражения, я все еще буду убежден звуком независимых показаний.
Пожалуйста, ответы могут дать ссылку намой манифест, который имеет только одну зависимость:
<dependency>
<dependentAssembly>
<assemblyIdentity type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='idontknowenuff' />
</dependentAssembly>
</dependency>
Поскольку это не указывает только управляемую среду выполнения, похоже, что мое решение не будет работать без полной установки (загрузка 4 Мб от MS).
Чтобы еще больше усложнить ситуацию, версия среды выполнения в моем каталоге VC / redist - 9.0.30729.1, но я предполагаю, что она будет обратно совместима.