Я використовую:
FileInfo(
System.Environment.GetFolderPath(
System.Environment.SpecialFolder.ProgramFiles)
+ @"\MyInstalledApp"
Для того, щоб визначити, чи виявлена програма на машині користувачів (це не ідеально, але програма, яку я шукаю, - це старий правильний глузд програми MS-DOS, і я не міг придумати інший метод).
У Windows XP та 32-бітних версіях Windows Vista це чудово працює. Однак у x64 Windows Vista код повертає папку Program Files x64, тоді як додаток встановлено у Program Files x86. Чи є спосіб програмно повернути шлях до програмних файлів x86 без жорсткої проводки "C: \ Program Files (x86)"?