Повторное использование определенного окна iexpore путем обновления его URL

#c#

#c#

Вопрос:

У меня есть приложение, которое отслеживает файл и на основе его содержимого запускает браузер, используя этот код:

 Process.Start("iexplore", "-nomerge "   fullUrl);
  

Теперь, как и во многих небольших проектах, требования изменились. Изменение заключается в том, что одновременно из моей программы можно запускать только один браузер.

Кроме того, другая программа способна запускать браузер с другим URL-адресом, и я не могу его закрыть, исключая возможность просто закрыть все экземпляры iexplore, а затем запустить мой. (что я и сделал изначально)

Есть ли способ запустить браузер и продолжать контролировать его, чтобы вы могли обновить URL-адрес этого конкретного экземпляра iexplore с помощью c #?

Этот код близок к тому, что содержится в ответе на дублирующийся пост, но немного отличается, поэтому я делюсь им здесь.

                        foreach (SHDocVw.InternetExplorer ie in new SHDocVw.ShellWindowsClass())
                        {
                            if (ie.FullName.ToLower().Contains("iexplore") amp;
                                ie.LocationURL.ToLower().Contains("amp;qtype=mine"))
                            {
                                ie.Visible = true;
                                ie.Navigate(fullUrl);
                                openNewBrowserWindowWindow = false;
                            }
                        }

                        if (openNewBrowserWindowWindow) { 
                            SHDocVw.InternetExplorerClass IE = new SHDocVw.InternetExplorerClass();
                            IE.Visible = true;
                            IE.Navigate(fullUrl);
                        }
  

Комментарии:

1. Пользователи склонны предполагать, что после запуска окна браузера они могут делать с ним все, что им нравится, включая просмотр других сайтов и т. Д. То, что вы планируете, звучит довольно враждебно для пользователя.

2. Мои намерения — не что иное, как удовлетворение потребностей бизнеса, в котором я работаю. Меня интересует только управление URL-адресом одного экземпляра iexplore, а не всех из них.

3. Рассматривали ли вы возможность использования элемента управления веб-браузером в своем приложении (или его создания с его помощью)? Таким образом, у вас будет полный контроль над URL-адресом, и вы сможете запретить своим пользователям повторно использовать окно браузера.

4. Я не рассматривал это подразделение, это сообщение было помечено как потенциальный дубликат. К сожалению, вопрос, который я, возможно, продублировал, остается без ответа, но у него есть фрагмент кода, который, я думаю, может сделать то, что мне нужно. @beercohol