30 مارس مقایسه 4 وب کنترل WebBrowser vs Gecko vs Awesomium vs OpenWebKitSharp
خوب در این پست چند وب کنترل و موتور مرورگر معروف رو بررسی میکنیم که اگر قصد داشته باشید در برنامه های c# خودتون صفحه ای رو باز کنید یا از … قطعا باید یکی از این 4 وب کنترل معروف رو انتخاب کنید .
کی به کیه ؟
WebBrowser
به صورت پیشفرض در تولبار visual studio این کنترل قرار داره
بر اساس کامپونت های Internet Explorer یا همون IE خودمون هستش
بر اساس MSHTML + Active-X و کنترل بیس هایIWebBrowser2. MSHTML+IWebBrowser2
Gecko
توسط یک شخص ثالث یا Third-party تولید شده
بر اساس موتور XULRunner که در فایرفاکس استفاده شده هستش
تنها فرم Winforms رو داره
Awesomium WebControl
توسط یک شخص ثالث یا Third-party تولید شده
هسته قابل شخصی سازی و کاستوم داره و در مرورگر کروم استفاده شده ( Chromium or WebKit)
فرم های مختلفی برای Winforms, WPF, Mono داره
OpenWebKitSharp
توسط یک شخص ثالث یا Third-party تولید شده
از این موتور در مرورگر Safari و Chromium استفاده شده
تنها فرم Winforms رو داره
EO.WebBrowser
توسط یک شخص ثالث یا Third-party تولید شده
از پروژه Chromium استفاده و تعمیم داده شده است
و پورت های Winforms وWPF رو داره
کدام بهتر است ؟
هیچکدام و همه !
بسته به استفاده برنامه نویس هر کدام از این کنترل ها و موتور ها میتونن بهترین انتخاب برای شما باشند به طور مثال فرض کنید شما بخواید بارها و در حالت موازی با چندین درخواست صفحاتی رو با پ ر و کسی های مختلف باز کنید قطعا گزینه شما نمیتونه webbrowser خود ویژوال استودیو باشه چون تنظیمات اون در واقع تنظیمات IE رو تغییر میده و در آن واحد یک بار میتونید روی اون ست کنید پس باید Geckofx یا مثلا Awesomium رو انتخاب کنید و حالا فرض کنید شما دارید در سیستم 64 بیتی کار میکنید از Awesomium نمیتونید استفاده کنید و باز این مشکل رو دارید که از Geckofx هم نمیتونید استفاده کنید چون باید سیستم 32 بیت باشه البته به نظر من geckofx خیلی خوش دست هست و خودم معمولا با اون کار میکنم اما ناچارا در VS 2012 در VMWare ویندوز 7 32 بیتی … خوبیش این هست که بعد از کامپایل شدن geckofx در سیستم های 64 بیتی هم run میشه و از این لحاظ مشکلی نداره …
در زیر تصویری از مقایسه بسیار دقیق این کنترلر ها و موتور ها گذاشتیم که از لحاظ لایسنس و قیمت خرید ( که البته در ایران معنی خاصی نداره ) و cpu مورد استفاده از لحاظ 32 و 64 بیت بودن طول آدرس دهی و پلت فرمشون و سرعت اون ها ، حجم dll های مورد نیاز ، حداقل نسخه دات نت فریم ورک و … مقایسه شدن .
[ برگرفته از codeproject ]
در پست های آینده به ترفند ها و نحوه استفاده هر کدوم اشارات کوتاهی خواهد شد …
No Comments