문제

내 호스팅 웹 브라우저에는 일반적으로 외부 문서를 일부 수정을 사용하여 HTML 이용하실 수 있습니다.

우리는 또한 포함 사용자 지정 응용 프로그램에 링크를 사용하여 가짜 프로토콜,같은"이"는 잡아 처리 BeforeNavigate2.

을 때 링크를 tarket 자(예를 들어,"spp:CloseWindow"),BeforeNavigate 하지 않아도 됩니다 사용자 지정 처리.브라우저가 제어하지 않 표시 가동 체계:주춤 오류가 남아 있지만에 READYSTATE_INTERACTIVE 과하지 않는 불 NavigateCompleteDocumentComplete.


나의 문제:가장 작업(예:검색 또는 업데이트 내용)는 지연을 기다리 readystate 도달하기 READYSTATE_COMPLETE.후에 그러한 잘못된 링크를 클릭하면,브라우저 얻지 않는데 더 이상-주고 싶습니다.렇게 하려면 어떻게 해야 합니까?

  • 할 수 있습니에서 감지"수는 downloadcomplete"는 탐색은 실패했습니까?(그래서 나는 휴식을 취할 수 있 테스트 "READYSTATE_COMPLETEREADYSTATE_INTERACTIVE and last downloadComplete was broken")
  • 할 수 있습니"reset"브라우저를 제어하 READYSTATE_COMPLETE(아)
  • 할 수 있었을 감지하 pseudoprotocols 실제로에서 지원하는 브라우저는 무엇입니까?

(에서 돌이켜 보면,사용 xxxx: 접두사지 않은 좋은 생각하지만,변경된 지금은 문제가 발생할 수 있습니다.)

도움이 되었습니까?

해결책

Internet Explorer 와 Windows 있는 확장 가능한 목록을 사용할 수 있는 프로토콜 구현 UrlMon.dll 내가 믿습니다.은 여기를 참조트 IE 건축물.

이를 감지할 수 없는 나쁜 프로토콜 BeforeNavigate 는 프로토콜을 알 수없는,그래서 진짜 탐색은 일어나고 있습니다.브라우저 결정에 오류가 표시 대신 페이지.오류가 페이지 탐색하지 않은 분명히 인상 모든 일반적인 이벤트입니다.

그러나,있는지 확인하는 방법을 탐색할 때에는 사라에서 잡초입니다.는 경우에 당신을 연결하는 웹 브라우저의 DocumentCompleted 이벤트,스캔할 수 있습에 대한 특정 Url 이와 관련된 오류,또는 더 일반적으로,아무것도로 시작하는 URL res://ieframe.dll.

예제:

  • 해상도://ieframe.dll/unknownprotocol.htm#spp:CloseWindow
  • res://ieframe.dll/dnserrordiagoff_webOC.htm#http://192...

청소 방법으로 후크 NavigateError 의 DWebBrowserEvents2 인터페이스.

다른 팁

우리는 문제가 있었을 때 호스팅 웹 브라우저 제어(구글 맵 에서)우리는 우리 것이 통보되는 탐색 완료(NavigateComplete),그러나 웹 페이지 자체가 완전히 끝나지 않은 상태라 렌더링을 수행합니다.이 문제를 해결하기 위해,우리는 추가 notifyInitialised 자바스크립트 함수는 단순히 탐색하는'응용 프로그램://onInitialised'-유사한 메커니즘을 사용하는.

아마 당신이 이렇게 무언가는 다음과 같이(이 있는 경우 제어 페이지를 통해 사용자가 이동하).추가할 수 있습니다 이 알림 메커니즘 및 확인에 대한 그것에서 당신의 코드입니다.지 않은 경우 후 받으신 규정된 시간 제한할 수 있다고 가정 뭔가 잘못되고 표시와 관련 메시지입니다.

당신이 관심이 있다면,우리는 또한 사용에 대한 메커니즘을 직접 javascript 함수 호출에서 우리의 C++코드 설명 .

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top