Генерация собственного кода

Я новичок в генерации собственного кода в .Net 4.0. В моем проекте есть более 500 DLL-файлов для одного EXE-файла. Если мне нужно создать собственный образ для всех этих DLL с помощью установки ngen.exe, это будет большой процесс. Итак, мой вопрос заключается в том, есть ли какой-либо инструмент или сценарий для создания собственного образа для всех этих DLL-файлов. Пожалуйста, помогите мне с этой проблемой.

Заранее спасибо.,


person user177777    schedule 19.07.2011    source источник


Ответы (2)


Просто процитирую самый первый абзац раздела Примеры на странице документации Ngen.exe в MSDN:

Следующая команда создает собственный образ для ClientApp.exe, расположенный в текущем каталоге, и устанавливает этот образ в кэш собственного образа. Если для сборки существует файл конфигурации, Ngen.exe использует его. Кроме того, собственные образы создаются для любых DLL-файлов, на которые ссылается ClientApp.exe.

ngen install ClientApp.exe

Так может RTFM?

person Nowhere man    schedule 19.07.2011
comment
-1: RTFQA. Также наивно полагаться на exe-файл для ссылки на каждую dll. - person leppie; 19.07.2011
comment
Я это уже пробовал. Но вывод показывает, что вам не хватает некоторых зависимостей для DLL, которые я не упоминаю в формате Ngen insatll. - person user177777; 19.07.2011
comment
Просто совет: если вы уже попробовали документированный способ сделать X, не спрашивайте, как мне сделать X?, но я пытался сделать X документированным способом, получил Y как сообщение об ошибке, что не так?... Люди могут Не угадаешь, что ты сделал и что случилось. - person Nowhere man; 19.07.2011

Просто используйте команду DOS «FOR»:

FOR %x IN (*.dll) DO ngen install %x
person leppie    schedule 19.07.2011
comment
Спасибо. как я могу получить к нему доступ в командной строке. Пожалуйста, объясните мне немного, что означает %DLL. Он показывает ошибку, например, %DLL является неожиданной в настоящее время в командной строке. - person user177777; 19.07.2011
comment
К сожалению, ему может понадобиться односимвольная переменная, например %x. - person leppie; 19.07.2011