NGen будет находиться в каталоге .NET Framework, например:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
Опция 1 - GetCORSystemDirectory () - это вызов API системы, который можно использовать для получения каталога.NET Framework, но проблема здесь в том, что при чтении документации кажется, что ее нужно вызывать из приложения .NET.Таким образом, вы можете запустить крошечное приложение .NET и записать результат GetCORSystemDirectory () в INI-файл.Может быть, поиск этой функции и посмотреть, если вы найдете что-нибудь полезное через Google.
Вариант 2 - Вы можете ввести .NET Framework в ожидаемый путь и итерировать по каталогам и найти тот, который начинается с "v2.0. ".
Вариант 3. Просто извлеките ngen из вашего isntaller и запустите его.Это то, что я иногда делал с регазмом.Я не уверен, с какими побочными эффектами вы можете столкнуться, является ли это полностью законным, или есть ли другие файлы, от которых это зависит.Если это что-то вроде regasm.exe, у вас все будет хорошо, если .NET Framework уже установлен.