PDA

View Full Version : سوال: استفاده از ریجستری به جای بانک اطلاعاتی



Mask
یک شنبه 21 مهر 1387, 19:22 عصر
با سلام
برنامه ای نوشته ام که مجبورم نسبت به شرایط تنها فقط یک فایل را به مشتری بدهم.
می خواستم از ریحستری خود ویندوز برای ذخیره و خواندن اطلاعات کمک بگیرم.
حالا دوستان عزیز بفرمایند بدون در نظر گرفتن اینکه هر بار ویندوز عوض می شه ریجستری هم دوباره نصب میشه(این مشکل رو حل کردم) آیا این کار رو می شه انجام داد یا مشکلی پیدا نمیشه و آیا کسی تا به حال این کار رو انجام داده.
آیا منطقیه؟

Mahmood_M
یک شنبه 21 مهر 1387, 21:13 عصر
برنامه ای نوشته ام که مجبورم نسبت به شرایط تنها فقط یک فایل را به مشتری بدهم.
راه های دیگه ای هم هست دوست عزیز ، مثلا یک کامپوننت در مجموعه JEDI وجود داره که می تونید به وسیله اون یک فایل رو به برنامتون پیوند بدید ، می تونید به وسیله اون فایل جدول رو در داخل برنامه قرار بدید و در زمان اجرا در یک مسیر کپی کنید و مسیرش رو به عنوان مسیر فایل بانک اطلاعاتی به برنامه ( جداول ) بدید.
علاوه بر این می تونید از فایلهای متنی ( Text File ) یا فایلهای Dat استفاده کنید ( اطلاعات رو به صورت رکورد ذخیره کنید ) ، استفاده از فایلهای Dat که ساختار خاصی ندارن و اطلاعات در اونها به صورت کدهای ASCII ذخیره میشه روش خوبیه ، در این صورت می تونید ساختار فایلهاتون رو خودتون تعیین کنید و به راحتی رمز یا هر چیز دیگه ای به اون اضافه کنید ، البته موقع خوندن و نوشتن اطلاعات یه خورده کد نویسی بیشتر میشه ، اما روش غیر منطقی و غیر استانداردی نیست ، در مورد کار با این فایلها می تونید به این لینک (http://delphi.about.com/od/fileio/a/fileof_delphi.htm) برید ...
راه های دیگه هم مثل فایلهای INI هست ، امام زیاد منتقی نیست ! ، شاید استفاده از رسورسها هم بتونه راه حل باشه ...

اگه اطلاعات دیگه ای در مورد کار با فایلهای DAT ( یا Typed Files ) خواستید بگید شاید بتونم کمکتون کنم ...

موفق باشید ...

Mask
یک شنبه 21 مهر 1387, 23:22 عصر
با تشکر از حسن توجهتون
در مورد سوالم نظرتون چیه؟

vcldeveloper
دوشنبه 22 مهر 1387, 00:26 صبح
استفاده از رجیستری برای ذخیره تنظیمات یک برنامه هم این روزها با اما و اگر مواجه هست، و خیلی ها استدلال میارند که اصولا استفاده برنامه ها از رجیستری برای ذخیره تنظیمات غیرسیستمی اشتباه هست، و موجب کاهش کارایی سیستم میشه، حالا اگر قرار باشه یک بانک اطلاعاتی را در رجیستری ذخیره کنید، دیگه نور علی نور میشه!

Mahmood_M
دوشنبه 22 مهر 1387, 00:33 صبح
با تشکر از حسن توجهتون
در مورد سوالم نظرتون چیه؟
...

آیا این کار رو می شه انجام داد یا مشکلی پیدا نمیشه و آیا کسی تا به حال این کار رو انجام داده.
آیا منطقیه؟
انجام این کار امکان پذیره ، اما به نظر من منطقی نیست ! ، در کل استفاده از برنامه برای چیزی که برای اون ساخته نشده منطقی به نظر نمی یاد ...
اما باز بستگی به اطلاعاتتون داره که چه نوع هستند ، حجمشون چقدر هست و ... ، حجم اطلاعات اگر زیاد باشه ( تعداد رکوردها ) ، خیلی به مشکل برخواهید خورد ، مشکل دیگه امکان حذف اطلاعات توسط کاربر ( که خبر نداره اطلاعات برنامه شماست ) هست و یا پاک کردن کلیدهای ایجاد شده توسط نرم افزارهای Registry Cleaner ! و مشکلات دیگه ای که مطمئنا وجود دارن ...
اما اگه مجبورید از این روش استفاده کنید و اطلاعاتتون هم زیاد نیست ، رجیستری می تونه راه حلی برای هدفتون باشه اما باید در مدیریت ثبت و حذف و سایر عملیاتها ( مثل جستجو و بروز رسانی ) دقت زیادی بکنید ...

موفق باشید ...

Mahmood_M
چهارشنبه 24 مهر 1387, 22:28 عصر
جناب Delphi-7 اگه هنوز دنبال یک راه حل هستید ، استفاده از یک Virtual Table هم میتونه مفید باشه :
Virtual Table همون طور که از نامش پیداست دیگه نیازی به فایل جانبی نداره ...

http://www.torry.net/pages.php?id=572

توی لینک بالا چند تا Table بدین منظور معرفی شده که دو تای آخری ( TVirtual Table و TkbmMem Table ) رایگان و کامل هستن

البته شاید این پستم اضافی باشه ، اما گفتم شاید هنوز درگیر این مشکل باشید ...

موفق باشید ...