WebBrowser hangs in loading after capture operation
===

I am developing application that uses WordCaptureX and WebBrowser components.

 Application handles hotkey, capture the word from the screen and navigates WebBrowser control to some url. Expects that user can capture a word from applications WebBrowser but after several capture operations the control hangs in loading state and navigation method does not work. I try to stop WebBrowser and even to dispose it and recreate but nothing helps.

I create a demo with main applications operations.

    public partial class Form1 : Form
    {
        private readonly WMonitorX _wMonitor = ComFactory.Instance.NewWMonitorX();
        private readonly WCaptureX _wCapture = ComFactory.Instance.NewWCaptureX();

        private readonly ManualResetEvent _runCaptureEvent = new ManualResetEvent(true);
        private readonly ManualResetEvent _startRetrieveEvent = new ManualResetEvent(false);

        private int _hwnd;
        private int _x;
        private int _y;

        private delegate void Worker();
        private readonly Worker _worker;

        public Form1()
        {
            InitializeComponent();

            _wMonitor.LineColor = 11119017;
            _wMonitor.LineWidth = 10;
            _wMonitor.WEvent += _wMonitor_WEvent;
            _wMonitor.Start((int)W_KEY.wmKeyCtrl, (int)W_MOUSE.wmMouseRight, false);

            webBrowser1.DocumentCompleted += webBrowser1_DocumentCompleted;

            _worker = RunCaptureAndNavigate;
            _worker.BeginInvoke(null, null);
        }

        private void _wMonitor_WEvent(int hwnd, int x1, int y1, int x2, int y2)
        {
            _hwnd = hwnd;
            _x = x1;
            _y = y1;

            _startRetrieveEvent.Set();
        }

        private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            if (e.Url == webBrowser1.Url)
            {
                _runCaptureEvent.Set();
                toolStripStatusLabel1.Text = "Page loaded";
            }
        }

        private void RunCaptureAndNavigate()
        {
            while (true)
            {
                _startRetrieveEvent.WaitOne();
                _runCaptureEvent.WaitOne();

                _runCaptureEvent.Reset();
                _startRetrieveEvent.Reset();

                Invoke((MethodInvoker) ExecuteCapturing);

                Invoke((MethodInvoker) Activate);

                toolStripStatusLabel1.Text = "Page loading";
                webBrowser1.Navigate("google.com");
            }
        }

        private void ExecuteCapturing()
        {
            var input = ComFactory.Instance.NewWInput();
            input.Hwnd = _hwnd;
            input.StartX = _x;
            input.StartY = _y;
            input.Options = (int) W_CAPTURE_OPTIONS.wCaptureOptionsHighlightWords |
                            (int) W_CAPTURE_OPTIONS.wCaptureOptionsUseWindowsWordBreaking;

            var result = _wCapture.Capture(input);

            var text = string.Empty;
            if (result != null && string.IsNullOrEmpty(result.Text))
            {
                text = result.Text;
            }

            textBox1.Text = text;
        }
    }

Unfortunately support of WordCaptureX component cannot helps me to avoid the situation when browser hags in loading.

So may be anyone have an idea how the browser can be reinitialized?