title: "Access violation reading location" in IISExpress 10 (in webengine4.dll) with Selenium IEDriver 12.6
body: <p>My configuration as follows. XUnit runner (1.9.2) fires tests generated using SpecFlow. IISExpress 10 starts in singleton like this:</p>
  
  <pre><code>_iisProcess = new Process { 
      StartInfo = { 
          FileName = Path.Combine(programFiles, @"IIS Express\iisexpress.exe") 
          } 
      }; 
  var applicationPath = GetApplicationPath();
  _iisProcess.StartInfo.Arguments = string.Format(
      "/path:{0} /port:{1} /systray:false /trace:e",
      applicationPath,
      IisPort); // so far 9090
  _iisProcess.Start();
  </code></pre>
  
  <p>Selenium IEDriverServer.exe (2.46) configured as this:</p>
  
  <pre><code>_driver = new InternetExplorerDriver(
      new InternetExplorerOptions(){EnsureCleanSession = true}); 
  </code></pre>
  
  <p>The machine configured as per <a href="https://github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver#required-configuration" rel="nofollow">this guide</a>. IEDriverServer.exe listens 17923 port.</p>
  
  <p>At some points in tests IISExpress fails with "Access violation" (c0000005) error. The actual fail system test varies but looks like it happens when there is some active UI interaction. There is SignalR, dynamic content and other. The Problem signature:</p>
  
  <pre><code>  Problem Event Name:   APPCRASH
    Application Name: iisexpress.exe
    Application Version:  10.0.10046.0
    Application Timestamp:    55121079
    Fault Module Name:    webengine4.dll
    Fault Module Version: 4.6.57.0
    Fault Module Timestamp:   551b8b21
    Exception Code:   c0000005
    Exception Offset: 00066ccf
    OS Version:   6.3.9600.2.0.0.256.48
    Locale ID:    1049
    Additional Information 1: 5861
    Additional Information 2: 5861822e1919d7c014bbb064c64908b2
    Additional Information 3: a10f
    Additional Information 4: a10ff7d2bb2516fdc753f9c34fc3b069
  </code></pre>
  
  <p>Sometimes it fails at code like this with "OpenQA.Selenium.WebDriverTimeoutException : Timed out after 30 seconds" at <code>DefaultWait.Until</code></p>
  
  <pre><code>        IWait&lt;IWebDriver&gt; wait = new WebDriverWait(driver, TimeSpan.FromSeconds(30.00));
          try
          {
              wait.Until(driver1 =&gt; ((IJavaScriptExecutor)driver).ExecuteScript("return document.readyState").Equals("complete"));
          }
          catch (InvalidOperationException ex) // js error { /*...*/  }
  </code></pre>
  
  <p>IISExpress log also does not help. It writes some last requests only and terminates:</p>
  
  <pre><code>Request started: "POST" http://localhost:9090/signalr/abort?transport=webSockets...
  Request ended: http://localhost:9090/signalr/connect?transport=webSockets...  with HTTP status 101.0
  Request ended: http://localhost:9090/signalr/abort?transport=webSockets&amp;clientProtocol=1.4.... with HTTP status 200.0
  WriteCompletedInline
  Action = 00000002
  Action = 00000000
  Request ended: http://localhost:9090/signalr/connect?transport=webSockets....  with HTTP status 101.0
  Request ended: http://localhost:9090/BotDetectCaptcha.ashx?get=image&amp;c=SampleCaptcha&amp;t=44c45e60afac46809bfce16e123b54a2 with HTTP status 200.0
  </code></pre>
  
  <p>It does not help if the tests run under Administrator. The same when R# test runner fires the tests. </p>
  
  <p>Any your thoughts, help would be much appreciated. Thanks!</p>