PDA

View Full Version : تفاوت بین vcL و MULTI DEVICE



DAMAVAND
پنج شنبه 02 اردیبهشت 1395, 05:36 صبح
چه تفاوتی بین فایل EXE ساخته شده در حالت vcL و EXE ساخته شده در حالت MULTI DEVICE APPILICATION هست از نظر اجرا روی سیستم های مختلف دقیقا؟ چون هر دو روی بستر ویندوز RUN میشن

Mahmood_M
پنج شنبه 02 اردیبهشت 1395, 07:47 صبح
Embarcadero DockWiki :



A multi-device application can run on any platform that RAD Studio supports; multi-device applications are not limited to either desktop or mobile platforms. By default, new multi-device applications are configured with all the supported target platforms.

Multi-device applications support two of the three major libraries of RAD Studio: FireMonkey and the RTL. Multi-device applications do not support the VCL.


Developing Multi-Device Applications (http://docwiki.embarcadero.com/RADStudio/XE8/en/Developing_Multi-Device_Applications)

ابوالفضل عباسی
شنبه 04 اردیبهشت 1395, 04:03 صبح
غیر از تفاوت کتابخانه که، کتابخانه VCL پیشرفته تر و جامع تر از مولتی دیوایس هست،بعضی کامپوننت ها که در Vcl پشتیبانی میشن در مولتی دیوایس پشتیبانی نمی شن.
مثلا کامپوننت های ADO و DBGrid و سری های DB.

Mahmood_M
شنبه 04 اردیبهشت 1395, 08:58 صبح
غیر از تفاوت کتابخانه که، کتابخانه VCL پیشرفته تر و جامع تر از مولتی دیوایس هست،بعضی کامپوننت ها که در Vcl پشتیبانی میشن در مولتی دیوایس پشتیبانی نمی شن.
مثلا کامپوننت های ADO و DBGrid و سری های DB.
ADO از واسط COM ویندوز برای ارتباط با بانک های اطلاعاتی استفاده میکنه و فقط برای استفاده در ویندوز کاربرد داره
به جای اون میشه از UniDAC و FireDAC استفاده کرد که به صورت مستقیم با بانک ارتباط دارن، حتی در ویندوز هم استفاده از UniDAC بهتر از ADO هستش

ابوالفضل عباسی
یک شنبه 05 اردیبهشت 1395, 07:27 صبح
اونکه بله که firedac خوبه،الان برای استفاده از بانک اطلاعاتی در پروژه firedac خوبه چون همه ی بانک هارو پشتیبانی میکنه.همچنین در زمینه فرمان های SQL.
من برای مثال گفتم.
ولی عیب بزرگی که مولتی دیوایس داره اینکه از کامپوننت های DB پشتیبانی نمی شه.مثل برای نمایش dbgrid نداری و برای نمایش باید از grid و یا stringgrid استفاده کنی که مثل dbgird کامل نیستند.همچنین برای پر کردن بانک dbedit نداری،و مجبور هستی برای edit فرمان بنویسی که کار مشقت باری است.

Mahmood_M
دوشنبه 06 اردیبهشت 1395, 10:29 صبح
مجموعه هایی مثل InfoPower کامپوننتهایی برای جایگزینی DBGrid در FireMonkey ارایه کردن

همچنین برای پر کردن بانک dbedit نداری،و مجبور هستی برای edit فرمان بنویسی که کار مشقت باری است.
گرچه موضع بحث این تاپیک نیست اما پیشنهاد می کنم هیچ وقت برای ویرایش اطلاعات از DBEdit استفاده نکنید، سعی کنید ورودی ها رو در Edit دریافت کنید و اطلاعات رو پس از بررسی ورودی ها در یک مرحله در بانک ذخیره کنید
هم می تونید مقادیر ورودی رو بهتر بررسی کنید و هم مراحل Edit یا Insert و یا Post مربوط به بانک رو
در کل استفاده از DBEdit یا DBGrid برای ویرایش مستقیم اطلاعات معمولا کار مناسبی نیست و باعث بروز خطاهایی میشه که مدیریتشون آسون نیست
شخصا همیشه فرم ثبت و ویرایش ایجاد می کنم همراه با Edit و DBGrid ای که استفاده می کنم هم صرفا برای نمایش هست و قابلیت Edit نداره مگر در موارد خیلی خاص !