PDA

View Full Version : فایلهای برنامه نمونه



khoshblagh
یک شنبه 23 فروردین 1388, 07:31 صبح
با سلام
کسی میدونه برای اجرای یک برنامه کمپایل شده در یک رایانه دیگر به غیر از فایل EXE
و مثلا فایلهای بانک اطلاعاتی چه فایلهای دیگه را باید انتقال داد . هدف من داشتن یک
دید کلی از فایلهای مورد نیاز در یک برنامه نمونه است. متشکرم

vcldeveloper
یک شنبه 23 فروردین 1388, 12:37 عصر
هیچی؛ اگر در برنامه از DLL خاصی استفاده نکردید، و برنامه را هم بصورت Build with runtime packages کامپایل نکردید، فقط فایل EXE (و در صورت استفاده از بانک اطلاعاتی، فایل های بانک اطلاعاتی) کفایت میکنه.

بعضی تکنولوژی های دسترسی به بانک اطلاعاتی برای اجرا نیاز به یکسری پیش نیازها دارند، که در صورت استفاده از آنها در برنامه، باید این پیش نیازها در سیستم فراهم باشند:


BDE نیاز به نصب BDE بر روی سیستم کاربر داره.
ADO نیاز به نصب MDAC بر روی سیستم کاربر داره؛ MDAC بطور پیش فرض روی همه ویندوزها نصب هست، و نیازی نیست شما چیزی نصب کنید.
dbExpress نیاز به درایور مربوط به بانک اطلاعاتی استفاده شده، دارد. این درایور بصورت یک DLL هست.

FiACKER
یک شنبه 23 فروردین 1388, 18:55 عصر
Build with runtime packages يعني اينكه اگر قراره برنامه شما به dll اي وابسته باشه اون dll رو در فايله exe ما مي زاره !؟

من اين كارو انجام دادم و فايل رو هم فشرده مي كرد !

حالا مي خوام بدونم بعد از تيك زدنه اون گزينه ايا qtintf70.dll دوباره بايد همراه برنامه ي من باشه !؟ يا ديگه نيازي به اون dll نداره !؟

vcldeveloper
دوشنبه 24 فروردین 1388, 02:17 صبح
Build with runtime packages يعني اينكه اگر قراره برنامه شما به dll اي وابسته باشه اون dll رو در فايله exe ما مي زاره !؟
نه، این گزینه مربوط به Packageهای دلفی هست که در برنامه استفاده شدند، و ربطی به DLL نداره.
اگر این گزینه فعال باشه، کدهایی که در پروژه خودتان از Packageهای استفاده کردید، به فایل EXE برنامه لینک نمیشند، و شما باید خودتون این فایل ها را به سیستم مقصد کپی کنید. چیزی شبیه به .Net Framework که باید برای اجرا برنامه های دات نت آن را بر روی سیستم کاربر نصب کنید.
علت کم حجم شدن فایل EXE تولید شده هم همین هست.

این گزینه بطور پیش فرض در دلفی غیر فعال هست، و دلفی هر کدی که از Packageها استفاده کرده باشید، را به فایل EXE لینک می کند تا یک فایل Stand-alone داشته باشید که برای اجرا نیاز به سایر فایل ها نداشته باشد. با فعال کردن اون گزینه، اگر فایل های Runtime استفاده شده در برنامه، در سیستم کاربر موجود نباشند، برنامه اجرا نخواهد شد!

FiACKER
دوشنبه 24 فروردین 1388, 20:10 عصر
ممنونم.

مي شه بگيد چطور مي تونم از شر اين qtintf70.dll خلاص بشم !؟
اگه مي شه در مورد اين فايل و محتواش كمي بگيد .
و ايا مي شه بخشي از برنامه رو حذف كرد تا ديگه به qtintf70.dll نيازي نباشه ؟

FiACKER
سه شنبه 25 فروردین 1388, 18:26 عصر
كسي نمي دونه چطور مي شه از دست qtintf70.dll خلاص شد ؟

يه برنامه پروتكتور هست كه فايلهاي اجرايي و dll رو به هم پيوست مي كرد (اسمش MoleBox بود) يعني چند تا فايل رو يكي مي كرد بعد تويه حافظه dll رو اتچ مي كرد رويه حافظه ي برنامه ي اجرايي !

ايا مي شه اين qtintf70.dll رو با اين برنامه به فايل اجرايي چسبوند ؟

vcldeveloper
چهارشنبه 26 فروردین 1388, 01:44 صبح
كسي نمي دونه چطور مي شه از دست qtintf70.dll خلاص شد ؟
شما دارید سعی می کنید در دلفی 7 یک پروژه با استفاده از CLX بجای VCL بسازید. CLX هم برای اجرا وابسته به کتابخانه QT هست.
اگر قرار نیست برنامه شما روی لینوکس اجرا بشه، از VCL بجای CLX استفاده کنید.

FiACKER
پنج شنبه 27 فروردین 1388, 23:39 عصر
سلام

مي شه بگيد چطور بايد از vcl استفاده كنم ؟

ايا لازمه اينترفيسه پروژه ام رو از اول طراحي كنم يا راهي براي تبديل clx به vcl هست !؟

vcldeveloper
جمعه 28 فروردین 1388, 00:24 صبح
ايا لازمه اينترفيسه پروژه ام رو از اول طراحي كنم يا راهي براي تبديل clx به vcl هست !؟
شاید مجبور بشید این کار را انجام بدید. در ساده ترین حالت، شاید با حذف حرف Q از اول نام یونیت های استفاده شده در بخش uses یونیت های برنامه، و ذخیره پروژه، و بازگزاری مجدد آن، بتونید CLX را با VCL جایگزین کنید.