.NET: Как программно определить, скомпилировано ли приложение .NET?

Мне нужно установить скрипт / приложение, которое запускается каждый раз при запуске и выполняет некоторые операции с правами пользователя.

Мой скрипт будет проверять текущую версию определенного приложения .NET (которое работает очень медленно если не скомпилировано, очень быстро если скомпилировано) было скомпилировано. Если отрицательный, он скомпилирует его (с NGEN.EXE). Как мы знаем, .NET-приложения должны быть скомпилированы на индивидуальной основе.

Эта проверка должна выполняться каждый раз при запуске машины.

Вопрос: Вы бы порекомендовали реализовать это с помощью C #, C ++ или какого-либо скрипта? Можете ли вы предоставить подробности?

ТИА.

0

Решение

Нет никакого смысла пытаться выяснить, ngen.exe уже может сделать это сам по себе. Просто беги:

ngen.exe обновление / очередь

Команда update говорит ему искать собственные изображения, которые больше не действительны. Параметр / queue указывает ему выполнять задание в фоновом режиме.

Ориентация на конкретную сборку осуществляется с

ngen.exe assemblypath установить / очередь

2

Другие решения

Уважаемый Я:

Все, что вам нужно сделать, это определить дату MyApp.exe и сравнить его с датой

C:\Windows\assembly\NativeImages*\*\MyApp.ni.exe

Если последний старше, вам нужно перекомпилировать.

Добро пожаловать.

0

По вопросам рекламы [email protected]