delphi4arab منتديات دلفي للعرب

نسخة كاملة : كيف يتعرف البرنامج على قاعدة المعطيات اينما وجدت
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
واجهتي مشكلة عند تغيير محرك او مجلد البرنامج  لا يتعرف البرنامج على قاعدة المعطيات ارجو من الاخوة اعطائنا توضيحات حول هذه المشكلة او طرح مثال لتعم الفائدة ( قاعدة المعطيات المستعملة Access
يمكنك استعمال ExtractFilePath
قمت ببحث على التعليمة و لم افهم
السلام عليكم ،
لا بد من تغيير مسار قاعدة البيانات برمجيا ، استعمل الدالة : ExtractFileDir 
وهذا مثال عند استعمالها :
http://www.delphibasics.co.uk/RTL.asp?Na...ctFilePath
تم الحل و الشكر الجزيل لابو معاذ

(01-12-2017, 08:05 AM)bouh25 كتب : [ -> ]تم الحل و الشكر الجزيل لابو معاذ

مازال المشكل قائم ارجو مثال توضيحي اذا امكن
السلام عليكم ،
ممكن ارفاق كود الاتصال  كاملا؟
ثم هل قاعدة البيانات موجودة في المسار E:\Person\Base.mdb  ،
أم أنها في مجلد  آخر داخل E:\Person  .


إذا كان في مجلد أخر لا بد من إضافته .
لأن الدالة ExtractFileDir  لا تعطيك إلا مسار الملف التنفيذي.
مثال إذا كان المجلد اسمه Data  و موجود داخل المجلد Person
في هذه الحالة لا بد من كتابة المسار كاملا :
E:\Person\Data\Base.mdb
(01-12-2017, 03:44 PM)أبو معاذ كتب : [ -> ]السلام عليكم ،
ممكن ارفاق كود الاتصال  كاملا؟
ثم هل قاعدة البيانات موجودة في المسار E:\Person\Base.mdb  ،
أم أنها في مجلد  آخر داخل E:\Person  .


إذا كان في مجلد أخر لا بد من إضافته .
لأن الدالة ExtractFileDir  لا تعطيك إلا مسار الملف التنفيذي.
مثال إذا كان المجلد اسمه Data  و موجود داخل المجلد Person
في هذه الحالة لا بد من كتابة المسار كاملا :
E:\Person\Data\Base.mdb

هذا الملف موجود في E:\Person  اريد ان انقله الى جهاز اخر و بمسار اخر
السلام عليكم ،
مرحبا بك مرة أخرى ،
لنجزئ المشكلة :
1- لا بد من استخراج المسار الكلي باستعمال الدالة   ExtractFilePath  نحتقظ به في متغير نصي و ليكن ThePath
بعد ذلك لا بد من تغيير في الخاصية ConnectionString    الخاصة ب ADOConnection1
وليكن ذلك في الحدث OnCreate  للفورم الرئيسي :

كود :
procedure TForm1.FormCreate(Sender: TObject); var ThePath : String ; begin    Thepath  := ExtractFilePath  (Application.ExeName);    ADOConnection1.Close;    ADOConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+Thepath+'\base.mdb;Persist Security Info=False';    ADOConnection1.Connected := True;    ShowMessage('OK'); end;
(01-12-2017, 08:09 PM)أبو معاذ كتب : [ -> ]السلام عليكم ،
مرحبا بك مرة أخرى ،
لنجزئ المشكلة :
1- لا بد من استخراج المسار الكلي باستعمال الدالة   ExtractFilePath  نحتقظ به في متغير نصي و ليكن ThePath
بعد ذلك لا بد من تغيير في الخاصية ConnectionString    الخاصة ب ADOConnection1
وليكن ذلك في الحدث OnCreate  للفورم الرئيسي :

كود :
procedure TForm1.FormCreate(Sender: TObject); var ThePath : String ; begin    Thepath  := ExtractFilePath  (Application.ExeName);    ADOConnection1.Close;    ADOConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+Thepath+'\base.mdb;Persist Security Info=False';    ADOConnection1.Connected := True;    ShowMessage('OK'); end;

لك جزيل الشكر اخي ابو معاذ و جعل الله لكل من كل حرف حسنة