Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 18379|Отговор: 1

[WinForm] Управление на браузъра, подобно на уеб браузър

[Копирай линк]
Публикувано в 26.02.2016 г. 15:05:52 ч. | | |

Сега, използвайки Webbrowser, сложете го в отделна нишка – при зареждане на уеб страницата програмата пак ще заседна, не реагира, не е неотзивчива, а натоварването на процесора ще скочи до 30%.
Не се зацикля, когато уеб страницата не се зареди.

Освен това, използването на InvokeMember("Клик") за симулиране на кликване върху някои връзки е невалидно, а точката на прекъсване може да отиде към правилния HtmlElement, но симулираното кликване не отговаря.

Не всички кликвания са невалидни, просто някои бутони или линкове са невалидни.


Има ли начин да се решат горните проблеми?
Ако не, има ли контрол на трета страна, който заема по-малко процесор, който поддържа присвояване на стойности на текстови полета, симулиране на кликове и работа с ленти за превъртане?

WebKit .NET
webkit-sharp
CefSharp
awesomium
OpenWebKitSharp
geckofx
MozNET уеб компонент





Предишен:Кое е по-мощно – ядрото на браузъра Gecko или WebKit?
Следващ:WebKit.net решението на изключението WebKitBrowser.dll
 Хазяин| Публикувано в 26.02.2016 г. 15:29:06 ч. |
Ако това е всичко, просто е, но уебсайтът, използван от проекта, има изключително лоша съвместимост с IE (оплаквам се: лично аз мисля, че IE е твърде лош, а поддръжката на стандартите е твърде слаба), затова нямах избор, освен да търся други подобни контроли в WebBrowser и намерих няколко добри заместители на контрола:

GeokoFx: Пакет за Windows Forms за Firefox Geoko Engine, изтеглете се в Google Адрес: http://code.google.com/p/geckofx/ Официален уебсайт: http://www.geckofx.org/
WebKit.NET:webkit的.NET封装,下载地址:http://sourceforge.net/projects/webkitdotnet/

Първоначално реших да използвам GeokoFx, защото уебсайтът, използван от проекта, се отваря много бързо с Firefox, но търсих няколко дни и не намерих как да предам js обект към контрола, когато открих, че контролът webbroswer на Qt също е капсулиран 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_ Тези два файла в папката NET2, в случая с NET4.0, се отнасят до тези два dll-а в папката Binary); След това има Toolbox - > Selections - > Selection OpenWebKitSharp.dll и изтегляне на WebKitBrowser от Toolbox върху вашата форма. Сега това е голяма стъпка, но за да избегнем всякакви грешки при използване, първо трябва да инсталираме два поддържащи файла:
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com