Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 18379|Yanıt: 1

[WinForm] Web tarayıcısı benzeri tarayıcı kontrolleri

[Bağlantıyı kopyala]
Yayınlandı 26.02.2016 15:05:52 | | |

Şimdi Webbrowser kullanarak, bağımsız bir iş parçacığına koyun, web sayfası yüklenirken program hâlâ takılıp, tepkisiz kalıyor, tepkisiz kalacak ve CPU kullanımı %30'a yükselecek.
Web sayfası yüklenmediğinde takılmaz.

Ayrıca, bazı bağlantılara tıklamayı simüle etmek için InvokeMember("Click") kullanmak geçersizdir ve kesme noktası doğru HtmlElement'e gidebilir, ancak simüle edilen tıklama yanıt vermez.

Tüm tıklamalar geçersiz değildir, sadece bazı düğmeler veya bağlantılar geçersizdir.


Yukarıdaki sorunları çözmenin bir yolu var mı?
Eğer yoksa, daha az CPU kaplayan üçüncü taraf bir kontrol var mı, bu da metin kutularına değerler atamayı, tıklamaları simüle etmeyi ve kaydırma çubuklarını çalıştırmayı destekliyor.

WebKit .NET
Webkit-sharp
CefSharp
awesomium
OpenWebKitSharp
geckofx
MozNET Web Bileşeni





Önceki:Hangisi daha güçlü, tarayıcı çekirdeği Gecko mu yoksa WebKit mi?
Önümüzdeki:WebKit.net istisna çözümü WebKitBrowser.dll
 Ev sahibi| Yayınlandı 26.02.2016 15:29:06 |
Eğer bu buysa, basit, ama projenin kullandığı web sitesi IE ile son derece kötü uyumluluk (şikayet ediyorum: şahsen IE'nin kötü olduğunu ve standartlara desteğinin de çok kötü olduğunu düşünüyorum), bu yüzden benzer başka WebBrowser kontrolleri aramak zorunda kaldım ve birkaç iyi yedek kontrol buldum:

GeokoFx: Firefox Geoko Engine Windows Forms Paketi, Google'da indirin Adres: http://code.google.com/p/geckofx/ Resmi web sitesi: http://www.geckofx.org/
WebKit.NET:webkit的.NET封装,下载地址:http://sourceforge.net/projects/webkitdotnet/

Başlangıçta GeokoFx kullanmaya karar vermiştim çünkü projenin kullandığı web sitesi Firefox ile çok hızlı açılıyor, ancak birkaç gün aradım ve js nesnesini kontrole nasıl ileteceğimi bulamadım, Qt'nin webbroswer kontrolünün de kapsüllenmiş bir WebKit kontrolü olduğunu görünce WebKit kullanmaya karar verdim, fakat WebKit.NET doğrudan nesneyi geçirmenin bir yolunu sağlamadı ve sonra başka bir iyi şey buldum:

open-webkit-sharp:对webkit.net的又一次封装,提供了很多新功能。google上下载地址:http://code.google.com/p/open-webkit-sharp/
Aşağıdaki çok basit: open-webkit-sharp indirin, Core klasöründeki ve Referanslar klasörünüzdeki tüm dosyaları proje dizininize kopyalayın, sonra projenizi açın ve referans OpenWebKitSharp.dll ve WebKit.Interop.dll ekleyin (projeniz .NET Framework 2.0 veya 3.5 referanslarında çalışıyorsa Binary_ NET2 klasöründeki bu iki dosya, NET4.0 durumunda, İkili klasördeki bu iki dll'ye atıfta bulunur; Sonra Toolbox - > Selections - > Selection OpenWebKitSharp.dll ve WebKitBrowser'ı Toolbox'tan formunuza sürükleyip oluşturabilirsiniz. Şimdi büyük bir adım, ancak kullanırken her türlü hata oluşmaması için önce iki destekleyici dosya yüklememiz gerekiyor:
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com