VS2008, .NET 2, VB.NET, XP ...WebBrowser 컨트롤이있는 폼을 닫을 때 왜 RaceOnRCWCleanup 오류가 발생합니까?
은 그냥 Me.Close
않는 웹 브라우저 컨트롤과 닫기 버튼으로 윈도우 형태를 갖는다. 양식의 취소 버튼은 닫기 버튼으로 설정되어 있기 때문에 ESC를 눌러 양식을 닫을 수 있습니다.
로드 이벤트에서 WebBrowser 컨트롤의 DocumentText
속성을 설정하면 HTML이 표시됩니다.
Visual Studio에서 응용 프로그램을 실행하고 닫기 단추를 누르면 오류없이 양식이 닫힙니다. 나는 ESC 버튼을 누르면 경우
나는
RaceOnRCWCleanup가 감지 메시지를 얻을 : 시도가 사용 중입니다 이없는 RCW에 만들어졌다. RCW 이 활성 스레드에서 사용되고 있거나 다른 스레드에서 사용 중입니다. 사용중인 RCW를 에서 해제하려고하면 데이터가 손상되거나 데이터가 손실 될 수 있습니다.
VS 외부에서 앱을 실행하면 오류가 발생하지 않습니다.
어떤 아이디어입니까? a) 왜 오류입니까? b) 방지하거나 억제하는 방법은 무엇입니까?
미리 감사드립니다.
아니, 그것은 모두 포 그라운드 스레드에서 발생합니다. 사실 나를 괴롭히는 것은 아닙니다. VS에서 스위치를 끄는 방법이 있습니다.Close 버튼을 클릭하여 Close 이벤트 핸들러를 호출하면 * 발생하지 않지만 Close 버튼은 폼의 Cancel 버튼 속성이므로 ESC를 눌러 동일한 핸들러를 호출하면 * * 않습니다. 왜 다른가요? – ChrisA
이 정확한 시나리오를보고 있습니다. 웹 브라우저를 사용하여 양식을 닫으므로 문제가되지 않습니다. ESC 키를 누르고 'X'키를 누르는 것의 차이점을 이해하고 싶습니다. – mpeterson
@chris, @mpeterson - 재판 및 해결책을 얻었으며 업데이트 소식이 게시되었습니다. –