Мы запускаем приложение на C # .net с пользователями, у которых может быть WinXP или Win7. WinXP в основном на IE-7, пользователи Win7 имеют IE-8. В приложении должна отображаться веб-страница, и она будет работать только в 32-разрядном браузере (Crystal Reports).
В WinXP браузер вызывается с помощью C: \ Program Files \ Internet Explorer \ iexplore.exe.
В Win7 64-разрядный браузер вызывается с тем же, но 32-разрядный браузер вызывается с C: \ Program Files (x86) \ Internet Explorer \ iexplore.exe.
Итак, нам нужно определить ОС пользователя, а затем использовать соответствующий IE. Или нам нужно каким-то образом сделать IE 32-битным браузером по умолчанию.
Когда мы впервые столкнулись с этим, я был одним из немногих пользователей Win7, и мы переназначили iexplore на моем компьютере, чтобы указать на 32-битный IE. Это работало в течение нескольких месяцев, пока мы не получили обновление, и оно настолько сильно сломало IE, что не запустилось вообще, и я закончил переоборудованием своего ПК. Я не думаю, что это хорошее решение для наших обычных пользователей!
Должны ли мы как-то получить ОС пользователя, а затем вызвать соответствующий IE? Как это будет сделано? Или есть лучший способ справиться с этим? Вероятно, какое-то время, возможно, несколько лет будет смесь ОС.