Я работаю над программой, которая использует IE для отображения страниц справки. Я использую C# в Visual Studio 2008, компилирующую .Net Framework 2.0. В Windows XP все работает так, как ожидалось. В Vista каждый раз, когда я нажимаю кнопку справки, я получаю новое окно с новым браузером IE. Кто-нибудь еще видел это или знал, как обойти это?Как получить SHDocVw.InternetExplorer для повторного использования того же окна в Vista, как в XP?
Вот код, который я использую для отображения страницы. strDefault - это местоположение файла справки html, который я пытаюсь загрузить. и все флаги, postData и заголовки пустые. Целевой кадр пуст, потому что это просто загружает главную страницу, после этого у меня есть код для загрузки определенного фрейма. Эта часть этого прекрасно работает. Это метод Navigate, который открывает новое окно в Vista. Я попытался использовать некоторые опции Flag безрезультатно.
SHDocVw.InternetExplorer myIE = new SHDocVw.InternetExplorer();
string strDefault = "Frame.htm"
object Flags = new object();
object TargetFrameName = new object();
object PostData = new object();
object Headers = new object();
myIE.Navigate(strDefault, ref Flags, ref TargetFrameName, ref PostData, ref Headers);
Это может быть связано с самим IE. Vista имеет версию 7. Какая версия у вас была на XP? – Timores
И какую версию IE вы используете в Vista? – Timores
Это IE 7 на XP и IE 8 на Vista. Я попробую его с IE 8 на XP, чтобы узнать, не изменилось ли это. – Jack