이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 18379|회답: 1

[윈폼] 웹 브라우저와 유사한 브라우저 제어

[링크 복사]
게시됨 2016. 2. 26. 오후 3:05:52 | | |

이제 웹브라우저를 사용해 독립 스레드에 넣고, 웹페이지를 로드할 때 프로그램이 여전히 멈춰서 반응하지 않거나 반응하지 않고, CPU 사용량이 30%까지 치솟습니다.
웹페이지가 로드되지 않을 때는 정체되지 않습니다.

또한, InvokeMember("Click")를 사용해 일부 링크를 클릭하는 모습을 시뮬레이션하는 것은 유효하지 않으며, 브레이크 포인트는 올바른 HtmlElement로 갈 수 있지만, 시뮬레이션된 클릭은 응답하지 않습니다.

모든 클릭이 무효인 것은 아니며, 일부 버튼이나 링크가 무효일 뿐입니다.


위 문제들을 해결할 방법이 있을까요?
만약 없다면, 텍스트 박스에 할당, 클릭 시뮬레이션, 스크롤 바 조작을 지원하는 CPU 사용량이 적은 서드파티 컨트롤이 있을까요?

WebKit .NET
웹킷-샤프
세프샤프
아웨소미움
오픈웹킷샤프
도마뱀붙이
MozNET 웹 컴포넌트





이전의:브라우저 커널 Gecko와 WebKit 중 어느 쪽이 더 강력한가요?
다음:WebKit.net 예외 문제에 대한 해답WebKitBrowser.dll
 집주인| 게시됨 2016. 2. 26. 오후 3:29:06 |
만약 그게 원인이라면, 간단하지만, 프로젝트에서 사용하는 웹사이트는 IE와의 호환성이 매우 떨어집니다(불만을 제기하자면: 개인적으로 IE는 별로고 표준 지원도 부족하다고 생각합니다). 그래서 어쩔 수 없이 비슷한 웹 브라우저 컨트롤을 찾아보다가 몇 가지 좋은 대체 컨트롤을 찾았습니다:

GeokoFx: 파이어폭스 지오코 엔진 윈도우 폼 패키지, 구글에서 다운로드 가능, 주소: http://code.google.com/p/geckofx/ 공식 웹사이트: http://www.geckofx.org/
WebKit.NET:webkit的.NET封装,下载地址:http://sourceforge.net/projects/webkitdotnet/

처음에는 프로젝트에서 사용하는 웹사이트가 Firefox로 매우 빠르게 열리기 때문에 GeokoFx를 사용하기로 했지만, 며칠간 찾아봤지만 js 객체를 컨트롤에 전달하는 방법을 찾지 못했습니다. Qt의 webbroswer 컨트롤도 캡슐화된 WebKit 컨트롤이라는 것을 알게 되어 WebKit을 사용하기로 했지만, 객체를 직접 전달하는 방법을 제공하지 않았 WebKit.NET 또 다른 좋은 점을 발견했습니다:

open-webkit-sharp:对webkit.net的又一次封装,提供了很多新功能。google上下载地址:http://code.google.com/p/open-webkit-sharp/
방법은 매우 간단합니다. open-webkit-sharp를 다운로드해서 Core 폴더와 References 폴더의 모든 파일을 프로젝트 디렉터리로 복사한 다음, 프로젝트를 열고 참조 OpenWebKitSharp.dll와 WebKit.Interop.dll을 추가하세요(프로젝트가 .NET Framework 2.0 또는 3.5 참조를 사용 중이라면 Binary_ NET4.0의 경우 NET2 폴더 내 이 두 파일은 Binary 폴더의 이 두 dll을 참조합니다; 그리고 툴박스 - > 선택 - > 선택 OpenWebKitSharp.dll 그리고 도구상자에서 WebKitBrowser를 폼으로 드래그하는 방법이 있습니다. 지금은 큰 단계지만, 사용 시 모든 오류를 피하려면 먼저 두 개의 지원 파일을 설치해야 합니다:
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com