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