Я использую контроль Webrowser, чтобы перейти к URL и сделать шаг, и это все.
Проблема, с которой я сталкиваюсь, заключается в том, что элемент управления работает нормально ровно 2 раза, а затем он перестает работать и не загружает URL-адрес больше, чем я понял, если я закрою приложение и снова запустите, он снова работает дважды, а затем то же самое.
Я пытался так примерно 5+ раз, каждый раз, так что это странное поведение.
Элемент управления находится внутри потока.
var th = new Thread(() =>
{
using (var br = new WebBrowser())
{
br.DocumentCompleted += browser_DocumentCompleted;
br.ScriptErrorsSuppressed = true;
br.ScrollBarsEnabled = true;
br.AllowNavigation = true;
br.Navigate(urltoRun);
Application.Run();
}
});
th.SetApartmentState(ApartmentState.STA);
th.Start();
th.Join(60000);
th = null;
И browser_DocumentCompleted:
private void browser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
if (!string.IsNullOrEmpty(htmlResult))
return;
// DO SOMETHING...
}