2013-04-10 2 views
2

CefSharp browser에 html 파일을 표시하기 위해 CefSharp을 사용하고 있습니다.CefSharp LoadHTML을 사용할 때 리소스가로드되지 않음

내가 web_view.Load(@"C:\htmlfile.htm");을 사용하면 내 몸의 배경을 보여줍니다.

로드 할 때 htmlfile.htm을로드하고 web_view.LoadHtml(File.ReadAllText(@"C:\in.htm")); 본문 배경이 표시되지 않습니다?

html 로컬 파일에서 주소 본문 배경을 어떻게 설정해야합니까?

이 내 HTML 파일의 내용이다 : 당신은, IRequestHandler.OnBeforeResourceLoad()를 구현하는 각 요청을 차단하고 디스크에서 바이트를 직접 읽고 응답으로 크롬에게 suppy해야합니다

<html> 
<body background="C:\Untitled.png"> 
</body> 
</html> 

답변

6

이 시도 :

web_view.LoadHtml(File.ReadAllText(@"C:\in.htm"), @"C:\in.htm"); 

두 번째 매개 변수는 URL은 로컬 리소스는 인 페이지가 로컬 리소스를로드 할 수있을 것입니다 경우, URL을 나타냅니다.

0

당신이 할 수있는 또 다른 방법은 schemeHandler (더 깨끗한 IMO)를 사용하는 것입니다.

  • CEF와 계획 등록 -

CEF.RegisterScheme ("ascheme"새로운 HandlerFactory을());

몸 배경 :

  • 은 디스크에서 PNG를로드

  • 다음 계획을 참조하여 HTML을 변경 관련 응답을 반환하는 방식 처리기를 추가 = "myscheme : //Untitled.png"

필요하다면 공란을 채울 수 있습니다 ...하지만 그 정도면 충분합니다!