منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
خزن ملفات داخل قاعدة البيانات - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة السي شارب C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=175)
+--- قسم : قسم اسئلة C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=176)
+--- الموضوع : خزن ملفات داخل قاعدة البيانات (/showthread.php?tid=28777)

الصفحات: 1 2


RE: خزن ملفات داخل قاعدة البيانات - elgokr - 08-03-19

لى ولك وللجميع بامر الله

تحياتى لك
وتمنياتى لك التوفيق



RE: خزن ملفات داخل قاعدة البيانات - رسول555 - 02-04-19

شكرا للجهود لدي سؤال اذا ممكن 
هو عند فتح الملف يحفظ نسخة في ملف المشروع 
المطلوب هو فتح الملف دون الحفظ مع الشكر



RE: خزن ملفات داخل قاعدة البيانات - elgokr - 02-04-19

الشكر لله والحمد لله
والحمد لله على كل حال

حفظ الملف اجبارة فى كلا الاحوال
كون ان يكون مرئي كما اشرت اليه او بمنطلق نفسه
سيقوم بانشاء الملف فى مجلد Temp الخاص بالنظام

لذلك جعلت من الامر ان يكون مرئي لمعرفة ما يقوم بتكوينه
لنقول انه يقوم بانشاء الملف بمجلد باسم 123 بجانب البرنامج

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

وبكده تكون انت متابعة لما يقومه البرنامج ولا يستغل من استهلاك المساحة على جهاز المستخدم
وتمكنت من تفريغ / مسح الملفات دون ان مستخدم الجهاز الدخول على مجلد Temp كل فترة لاتمام تفريفه

تحياتى لك
وتمنياتى لك التوفيق



RE: خزن ملفات داخل قاعدة البيانات - رسول555 - 03-04-19

شكرا لك اخي عذرا على الالحاح هل من الممكن كتابة الكودات التي شرحتها اي كود الحفظ في مجلد وكود الحذف عند الاغلاق
  Heart مع الشكر Heart



RE: خزن ملفات داخل قاعدة البيانات - elgokr - 04-04-19

الشكر لله والحمد لله 
والحمد لله على كل حال

فى البداية لاتمام الامر
بدلاً من تكوين الملفات بجانب البرنامج مباشراً
تعال نجعلها تتكون بداخل مجلد بجانب البرنامج ولاتمام ذلك عليك اتمام التالي

فى الحدث الخاص بالمشروع تحت اسم button2_Click
ستجد هذا الجزء من الكود فى الحدث
كود :
               // تحويل الكود المسجل بقاعدة البيانات الى ملف
               byte[] ff = (byte[])dt.Rows[DgId][3];
               var FPath = dt.Rows[DgId][1].ToString() + dt.Rows[DgId][2].ToString();
               FileStream FFS = new FileStream(FPath, FileMode.Create, FileAccess.Write);
               FFS.Write(ff, 0, ff.Length);
               FFS.Close();
               // تنفيذ فتح الملف بعد انشائه بالكود السابق
               Process.Start(FPath);

كل ما عليك استبداله بهذا الكود
كود :
               // تحويل الكود المسجل بقاعدة البيانات الى ملف
               byte[] ff = (byte[])dt.Rows[DgId][3];
               if (!System.IO.Directory.Exists("MyFile")) { System.IO.Directory.CreateDirectory("MyFile"); }
               var FPath = "MyFile\\" + dt.Rows[DgId][1].ToString() + dt.Rows[DgId][2].ToString();  
               FileStream FFS = new FileStream(FPath, FileMode.Create, FileAccess.Write);
               FFS.Write(ff, 0, ff.Length);
               FFS.Close();
               // تنفيذ فتح الملف بعد انشائه بالكود السابق
               Process.Start(FPath);

بكده نكون انهينا الخطوة الاولى
ناتى بعد ذلك فى الخطوة الثانية اضافة تفريغ او حذف المجلد عند الانتهاء من العمل على الشاشة
فاليك ان تقوم بالتالى

تعال على الفورم وقم بتفعيل حدث : Form1_FormClosing
وقم بعد ذلك باضافة هذا الكود بداخله
كود :
           if (System.IO.Directory.Exists("MyFile")) { System.IO.Directory.Delete("MyFile", true); }

وبكده كلما تم اغلاق الشاشة سيتم حذف المجلد مباشراً
ولكا تم فتح الفورم وتحديد ملف لفتحه سيتم تلقائي تكوين المجلد ووضع الملف بداخله

وبكده تكون حليت مشكلة تواجد الملف بجانب البرنامج

تذكر كلمة MyFile فى الاكواد بالاعلى تعنى اسم المجلد يمكنك تغيير الكلمة لما تريده
من جميع اسطر الاكواد معاً وليس  فى سطر واحد فقط

تحياتى لك
وتمنياتى لك التوفيق



RE: خزن ملفات داخل قاعدة البيانات - رسول555 - 05-04-19

Heart في الحقيقة يعجز لساني عن شكرك على الدعم الذي تقدمه لي لكنك فعلا تطبق القول  (زكاة العلم نشره) متمنيا لك دوام التوفيق Heart


RE: خزن ملفات داخل قاعدة البيانات - elgokr - 06-04-19

الحمد لله والشكر لله
والحمد لله على كل حال

تحياتى لك
وتمنياتى لك التوفيق