PDA

View Full Version : سوال: ارتباط با درایور



Behrooz_CS
یک شنبه 05 مهر 1388, 21:30 عصر
سلام
من در حال توسعه یک فایروال هستم ( برای ویندوز)
یک اینترفیس تحت خط فرمان با MFC درست کردم
اما می خوام GUI را با QT یا یک کامپایلری که توی لینوکس هم جواب بده بنویسم که بعدا برای لینوکس هم فایروالشو بنویسم و از همین اینترفیس توش استفاده کنم
فایروال من یه NDIS Intermediate Filter هست

سوال من اینه که می شه توی QT با درایور ها ارتباط برقرار کرد ؟ می شه برنامه های سیستمی نوشت ؟ تا چه حد می شه این کار را کرد ؟
اگر جواب منفی هست می شه یه Wrapper برای ویندوز و یکی هم برای Linux نوشت و ازش توی QT استفاده کرد ؟

Nima_NF
یک شنبه 05 مهر 1388, 21:59 عصر
شما هنگام برنامه نویسی Qt دسترسی مستقیم به API های آن سیستم عامل دارید و می توانید با define های تعریف شده، برای هر سیستم عامل قطعه کد مورد نظر خود را کامپایل کنید.
دقیقا همانطور که در MFC به API ها دسترسی دارید.

Behrooz_CS
دوشنبه 06 مهر 1388, 15:46 عصر
ممنونم

یه سوال دیگه : من توی فروم QT همین سوال را کردم
http://www.qtforum.org/post/99016/connect-to-driver.html#post99016

در مورد جواب داده شده در لینک بالا نظرتون چیه ؟؟
-----------------------------------------------

سوال بعدی : من با QT و wxWidgets تا حالا کار نکردم
به نظرتون با کدومش کار کنم بهتره ( منظورم راحتی کار نیست . منظورم اینکه کدومش قویتر هست و مطمئن تره )

کلا می تونید تفاوت های آنها را برام توضیح بدهید
از کمکتون ممنونم

Nima_NF
دوشنبه 06 مهر 1388, 16:56 عصر
قبلا در مورد تفاوت های Qt و Wxwidgets به طور کامل بحث شده است:
http://barnamenevis.org/forum/showthread.php?t=104483

در آن زمان که توضیحات نوشته شد، Qt تجاری بود و نسخه open source آن GPL بود و این طوری برنامه نویسی رایگان را محدود می کرد. و این موضوع اصلی ترین ضعف Qt بود.

اما الآن Qt تحت LGPL عرضه می شود (همانند Wxwidgets ) و شما می توانید رایگان با آن برنامه تجاری بنویسید و سورس کد را هم عرضه نکنید.

پس در حال حاضر بنده توصیه می کنم روی Qt وقت صرف کنید که تیم قوی تری پشت آن هست.