VS2008, .NET 2, VB.NET, XP ...¿Por qué un error RaceOnRCWCleanup al cerrar un formulario con control WebBrowser en él?
que tiene una forma de Windows, con un control WebBrowser y un botón Cerrar, que sólo hace un Me.Close
. El botón de cancelación del formulario está configurado en el botón Cerrar, para que pueda presionar ESC para cerrar el formulario.
Establecí la propiedad DocumentText
del control WebBrowser en el evento de carga y se muestra el HTML.
Ejecutando la aplicación de Visual Studio, si hago clic en el botón Cerrar, el formulario se cierra sin ningún error.
Si pulso el botón ESC me sale
RaceOnRCWCleanup se detectó Mensaje: Se ha hecho un intento de libre de un RCW que está en uso. El RCW está en uso en el hilo activo o otro hilo. Intentar liberar un en uso RCW puede causar daños o la pérdida de datos .
Si ejecuto la aplicación fuera de VS, no obtengo ningún error.
Alguna idea a) por qué el error, yb) cómo prevenirlo o suprimirlo?
Muchas gracias de antemano.
No, todo está sucediendo en el hilo de primer plano. No es el hecho de que esté sucediendo en absoluto lo que me molesta, hay formas de apagarlos en VS.Es el hecho de que si se invoca el controlador de eventos Close haciendo clic en el botón Cerrar, * no * sucede, pero si se invoca el mismo controlador presionando ESC (ya que el botón Cerrar es la propiedad del botón Cancelar del formulario), * hace*. ¿Por qué la diferencia? – ChrisA
Veo este escenario exacto ... no es un problema para mí, porque QUIERO cerrar el formulario con el webBrowser en él. Me gustaría entender por qué hay una diferencia entre presionar ESC y hacer clic en la 'X'. – mpeterson
@chris, @mpeterson - obtuve una reproducción y una solución, publicación actualizada. –