Какой ngen.exe я должен использовать при использовании элемента supportRuntime в app.config?
Я связываю ngen.exe для.net 2.0 и.net 4.0 с моим приложением.net 3.5 внутри установщика NSIS. Я не нахожу другого способа сделать это, поэтому я собираю это.
У меня есть следующее в моем файле app.config.
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0"/>
</startup>
Я также использую другой app.config, который не имеет кода сверху. Другой файл app.config используется только в том случае, если на компьютере установлен.net 3.5. мой вопрос, какую версию ngen.exe я должен использовать, если у пользователя не установлен.net 3.5?
1 ответ
Вы не можете "связать" ngen.exe, это не разрешено. Лицензия специально запрещает это, читайте redist.txt в каталоге установки VS.
Это не только делает вашу жизнь трудной, но и мешает вам совершить ошибку. С таким файлом.exe.config вы требуете, чтобы приложение работало с.NET 4, независимо от того, против чего оно было построено. Вы просите использовать джиттер v4.0, поэтому подходит только версия ngen.exe v4.0. Который уже установлен на машине, поэтому "комплектация" не нужна. Если он не установлен, запуск приложения также не будет работать.