دلفي برمجة المستخدم وتخزين بيانات التطبيق

عندما تحتاج إلى تخزين بعض المحتوى الخاص بك تطبيق دلفي على القرص الصلب الخاص بالمستخدم ، يجب أن تهتم بالدعم لفصل بيانات المستخدم وإعدادات المستخدم وإعدادات الكمبيوتر.

على سبيل المثال ، مجلد "بيانات التطبيق" في شبابيك يجب أن تستخدم لتخزين الوثائق الخاصة بالتطبيق مثل ملفات INIأو حالة التطبيق أو الملفات المؤقتة أو ما شابه.

يجب ألا تستخدم أبدًا مسارات مضمنة إلى مواقع محددة ، مثل "c: \ Program Files" ، لأن هذا قد لا يعمل على إصدارات أخرى من Windows لأن موقع المجلدات والأدلة يمكن أن يتغير مع إصدارات مختلفة من شبابيك.

دالة SHGetFolderPath Windows API

يتوفر SHGetFolderPath في SHFolder وحدة. يسترد SHGetFolderPath المسار الكامل للمجلد المعروف الذي تم تحديده.

إليك دالة مجمعة مخصصة حول SHGetFolderPath API لمساعدتك في الحصول على أي من المجلدات القياسية للجميع أو مستخدم Windows المسجل حاليًا.

فيما يلي مثال على استخدام دالة SHGetFolderPath:

  • قم بإسقاط TRadioButtonGroup (الاسم: "RadioGroup1") في نموذج
  • قم بإفلات TLabel (الاسم: "Label1") في نموذج
  • أضف 5 عناصر إلى مجموعة الراديو:
    • "[Currenty User] \ My Documents"
    • "كافة المستخدمين \ بيانات التطبيق"
    • instagram viewer
    • "[خاص بالمستخدم] \ بيانات التطبيق"
    • "ملفات البرنامج"
    • "كافة المستخدمين \ المستندات"
  • تعامل مع حدث OnClick الخاص بـ RadioGroup على النحو التالي:

ملاحظة: "[Current User]" هو اسم مستخدم Windows الذي تم تسجيل دخوله حاليًا.

ملاحظة: SHGetFolderPath مجموعة شاملة لـ SHGetecialFolderPath.

يجب عدم تخزين البيانات الخاصة بالتطبيق (مثل الملفات المؤقتة وتفضيلات المستخدم وملفات تكوين التطبيق وما إلى ذلك) في مجلد My Documents. بدلاً من ذلك ، استخدم ملف خاص بالتطبيق موجود في مجلد بيانات التطبيق صالح.

إلحاق مجلد فرعي دومًا إلى المسار الذي ترجعه SHGetFolderPath. استخدم الاصطلاح التالي: "\ Application Data \ Company Name \ Product Name \ Product Version".

instagram story viewer