PDA

View Full Version : حرفه ای: ذخیره اطلاعات برنامه به صورت Portable



arash020
چهارشنبه 12 خرداد 1389, 02:44 صبح
سلام


چطور برنامه ای بنویسیم که بتونه اطلاعاتی که پردازش میکنه یا توسط کاربر میگیره رو توی خودش ذخیره کنه

منظورم تو خود فایل Exe اصلیشه یا چیزی شبیه همین
که با انتقال فایل به سیستم دیگه بازم همون اطلاعات رو داشته باشیم؟؟؟

احتمالا از طریق رجیستری و فایل متنی یا Ini امکان پذیر نیستش...!؟

با تشکر

حمید محمودی
چهارشنبه 12 خرداد 1389, 03:30 صبح
چطور برنامه ای بنویسیم که بتونه اطلاعاتی که پردازش میکنه یا توسط کاربر میگیره رو توی خودش ذخیره کنه


اگه برای دلیل زیر هست


که با انتقال فایل به سیستم دیگه بازم همون اطلاعات رو داشته باشیم


راحت ترین راه همونذخیره در ini file هست. و در همون مسیری که فایل اصلی هست ذخیرش کنید ..

arash020
پنج شنبه 13 خرداد 1389, 02:05 صبح
سلام
راستش می خوام همه ی برنامه و تنظیماتش توی همون فایل EXE باشه و هیچ فایل دیگه ای همراش نباشه!!!
امکان داره فایل ini رو لینکش کنیم که دیده هم نشه و با انتقال فایل اصلی همراش باشه مثل
فایل های html???؟؟؟

REZADG
پنج شنبه 13 خرداد 1389, 05:48 صبح
نمی دونم اما شاید در res برنامه بشه ذخیرش کرد

mpmsoft
پنج شنبه 13 خرداد 1389, 11:29 صبح
راهی وجود نداره بدلیل اینکه زمانی که شما برنامه را اجرا می کنید فایل اجرای قفل می شود و قابل ویرایش نیست

در زمان اجرا هم بخش res قابل تغییر نیست

M.T.P
پنج شنبه 13 خرداد 1389, 11:37 صبح
دوست عزیز امکان نداره همچین کاری رو انجام داد. نه اینکه اصلا ممکن نیست بلکه این امکان رو ما نداریم و هیچ کس نداره و اصولا معنایی نداره. دیتابیس مراحل خاص خودش رو داره یعنی:
- باز شدن
- اعمال تغییرات
- بسته شدن
فرض رو بر این بگیرید که اطلاعات یک سری اشخاص رو در داخل فایل اجرایی ذخیره کردید!!! و حالا ورژن جدیدی از برنامه تون ساختین!! خب حالا دسترسی به اطلاعات قبلی چی میشه؟؟؟ یعنی باید از فایل اجرایی قبلی بعنوان دیتابیس استفاده کرد؟ :لبخند:
و هزار و یک دلیل دیگه:متفکر: :لبخندساده:

arash020
یک شنبه 16 خرداد 1389, 02:05 صبح
فرض کنید اون اطلاعات فقط مختص همون ورژن از نرم افزار باشه

از همتون ممنونم و آرزوی موفقیت براتون دارم
مرسی که راهنمایی کردین

حمید محمودی
یک شنبه 16 خرداد 1389, 02:44 صبح
به دردسرش نمی ارزه. به دلیلی که گفتین میخای



که با انتقال فایل به سیستم دیگه بازم همون اطلاعات رو داشته باشیم


پیشنهاد بنده همون INI FILE هست . میتونی در موقع خروج به کاربر بگی که از تنظیمات بکآپ بگیره و ...

vbhamed
یک شنبه 16 خرداد 1389, 11:15 صبح
سلام
راستش می خوام همه ی برنامه و تنظیماتش توی همون فایل EXE باشه و هیچ فایل دیگه ای همراش نباشه!!!
امکان داره فایل ini رو لینکش کنیم که دیده هم نشه و با انتقال فایل اصلی همراش باشه مثل
فایل های html???؟؟؟

سلام
اگر فايل اجرايي رو به صورت باينري باز كنيد، انتهاي اون مي تونيد به صورت باينري هر چيزي بنويسيد بدون اينكه مشكلي پيش بياد
البته سايز اصلي فايلتون رو بايد داشته باشيد تا دفعات بعدي بتونيد بخونيد يا اينكه هميشه به طول مشخصي بنويسيد
اگر نتونستيد فايل exe خودتون رو در حال اجراي برنامتون باز كنيد، بوسيله ريسورسها و ... مي‌تونيد يك فايل exe ديگه در زمان اجراي برنامه ايجاد كنيد كه بعد از بسته شدن برنامتون، تنظيمات رو در انتهاي فايل exe بنويسه به اينصورت :

1 - برنامه اصلي اجرا ميشه
2 - تنظيمات مورد نظر در اون انجام ميشه و يا اطلاعات جديدي وارد ميشه
3 - تنظيمات در يك فايل متني ذخيره ميشه
4 - برنامه كمكي از دل برنامه اصلي به صورت يك فايل exe جداگانه استخراج ميشه (روش ذخيره يك فايل در ريسورس برنامه در سايت موجود است)
5 - برنامه كمكي اجرا شده و از برنامه اصلي خارج ميشيم
6 - برنامه كمكي چند ثانيه پس از اجرا صبر مي كنه تا برنامه اصلي بسته بشه بعد فايل متني حاوي تنظيمات رو باز مي كنه و اونها رو به صورت باينري در انتهاي فايل exe اصلي برنامه مي نويسه
7 - فايل متني تنظيمات پاك ميشه

برنامه كمكي رو هم مي تونيد در پوشه Temp ويندوز باز كنيد

polisoftco
یک شنبه 16 خرداد 1389, 16:34 عصر
سلام
بهترین روش همینی هستش که دوستمون آقا حامد گفتن، ولی یکم سخته.
چندجا دیدم که همینکارو میکردن، یعنی فایل کمکی رو توی پوشه Temp ویندوز درست میکردن بعدش حذفش میکردن.

Snoopboy
شنبه 22 خرداد 1389, 04:31 صبح
سلام
ممنون از راهنماییاتون . ولی ممکنه کسی یک مثال بزنه؟ اگه ممکنه یک نممونه بگذاره