منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : وضع ملف MDF داخل program files
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
من المعروف أن البرامج داخل ملف program files برامج للقراءة فقط .. أي أنها لا تقبل التعديل ..
عند وضع قاعدة البيانات mdf داخل فولدر البرنامج وعمل تحزيم ثم عمل SETUP في أي جهاز سيتم تستيب البرنامج ووضع الملفات بما فيها قاعدة البيانات ضمن ملفات البرنامج داخل  program files .. فتحدث مشكلة أنها لا تقبل التعديل .. لذلك عند إغلاق البرنامج وفتحه لا تجد التعديلات التي قمت بها قبل الإغلاق .. 
فما الحل ؟؟
لا يوجد حل ؟؟
في انتظار الخبراء ..
(12-02-15, 09:17 AM)starosta كتب : [ -> ]من المعروف أن البرامج داخل ملف program files برامج للقراءة فقط .. أي أنها لا تقبل التعديل ..
عند وضع قاعدة البيانات mdf داخل فولدر البرنامج وعمل تحزيم ثم عمل SETUP في أي جهاز سيتم تستيب البرنامج ووضع الملفات بما فيها قاعدة البيانات ضمن ملفات البرنامج داخل  program files .. فتحدث مشكلة أنها لا تقبل التعديل .. لذلك عند إغلاق البرنامج وفتحه لا تجد التعديلات التي قمت بها قبل الإغلاق .. 
فما الحل ؟؟

هو أساساً أنت ليه بتركب البرنامج بتاعك داخل Program files حضرتك متخيل أنه حتى لو وجدنا حل لمشكلة عدم حفظ البيانات، فبمجرد سقوط نسخة الويندوز الخاصة بك، قد تفقد قاعدة البيانات أساساً

لأنه من ضمن الأخطاء التي تحدث عند سقوط نسخة الويندوز، أن يفقد القسم (البارتيشن) الخاص بالويندوز كل بياناته، وبذلك ستفقد قاعدة البيانات

لذا أعتقد أنه من الأفضل أن تحدد مسار تركيب البرنامج في قسم آخر غير الـ C

وطبعاً تقدر تحدد المسار مسبقاً عند تحزيم البرنامج، أون عند التركيب
شاااااااااكر لك أخي الحبيب .. فعلا كلامك صحيح ..
المشكلة ان البرنامج ما يشتغل إلا عند وضعه في program files أو المستندات أو سطح المكتب .. خلاف ذلك لا يقرأ قاعدة البيانات الموجودة داخل الفولدر ..
كلام غريب ... وضح اكثر 
(14-02-15, 06:06 PM)starosta كتب : [ -> ]شاااااااااكر لك أخي الحبيب .. فعلا كلامك صحيح ..
المشكلة ان البرنامج ما يشتغل إلا عند وضعه في program files أو المستندات أو سطح المكتب .. خلاف ذلك لا يقرأ قاعدة البيانات الموجودة داخل الفولدر ..

هذه المقولة غير صحيحة أخي الحبيب فالبرنامج يعمل في أي مسار ركبته به، المشكلة قد تكون أنك قد حدد مسار قاعدة البيانات في نص الاتصال على مسار Program files على سبيل المثال

فأنا مثلاً أضع قاعدة البيانات في مسار البرنامج وأقوم بتركيبه على بارتيشن مثل D ويقرأ البيانات بطريقة طبيعية ولا بأس

تأكد أولاً من مسار قاعدة البيانات داخل برنامجك ولنتابع حل المشكلة بإذن الله
مرحبا بكم ..
أخي Genius Live
ما أريده في النهاية هو تسويق برامجي بصنع ملف setup  وإرسالة للمستخدم النهائي ((غير الخبير)) والذي يقوم بتستيب البرنامج شاملا قاعدة البيانات والبرامج المطلوبة مثل sql server  و الورك فريم .. والكريستال ريبورت ..
لو قمت بتجميع محتويات فولدر release في ملف setup سينتج في النهاية وضع الداتا بيز mdf داخل فولدر البرنامج بعد التستيب وهو بالطبع تلقائيا داخل program files مما يؤدي لعدم عملها ..
أريد أفضل طريقة لنشر برنامجي .. ليحل المشكلتين أعلاه .. مشكلة أرفاق البرامج المطلوبة ومشكلة مسار قاعدة البيانات ..
ولك كل الشكر على تجاوبك ..

أخي [b]slackgate[/b]
مرحبا بك ..
انا أكتب مسار البرنامج بالشكل التالي
كود :
|directory|\database.mdf


وأضع ملف mdf في نفس الفولدر مع ملف exe وهذه الطريقة تنجح فقط عند تركيب البرنامج في المستندات وسطح المكتب بصورة ممتازة .. وتنجح أيضا عند وضعها داخل program files لكنها هذه الحالة لا تحفظ التعديلات عند إعادة تشغيل البرامج ..لكن عند التركيب في أي درايفر آخر لا يقرأ قاعدة البيانات نهائيا ..


عموما كما ذكرت في الرد السابق .. انا حاليا لدي برنامج جاهز .. يحتوي ملف  mdf ويحتاج لتشغيله إلى كريستال ريبورت وفريك وورك 4.5 إضافة إلى sql server  .. أريد جمع كل ذلك في ملف واحد يستطيع المستخدم العادي تركيبه بسهولة والعمل عليه لأنه في الأخير غير خبير ..
أتمنى أن تكون أفكاري كلها واضحة ..
ببساطة جدا
اجعل المستخدم يغير المسار في معالج التثبيت الي اي برتشن غير ال c
هذا الشئ اللي تجنبته بصراحة يا أخوي ..
بس شكله فعلا مضطر أسوي كده ..
-
الله يعطيك العافية ..