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

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

مازال المشكل قائم ارجو مثال توضيحي اذا امكن


الملفات المرفقة
.png   Sans titre.png (الحجم : 89.75 ك ب / التحميلات : 24)
الرد
#6
السلام عليكم ،
ممكن ارفاق كود الاتصال  كاملا؟
ثم هل قاعدة البيانات موجودة في المسار E:\Person\Base.mdb  ،
أم أنها في مجلد  آخر داخل E:\Person  .


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


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

هذا الملف موجود في E:\Person  اريد ان انقله الى جهاز اخر و بمسار اخر


الملفات المرفقة
.rar   Person.rar (الحجم : 788.13 ك ب / التحميلات : 17)
الرد
#8
السلام عليكم ،
مرحبا بك مرة أخرى ،
لنجزئ المشكلة :
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;


الملفات المرفقة
.rar   Person.rar (الحجم : 31.38 ك ب / التحميلات : 19)
اللهم اجعلني من أهل القرآن ، الذين هم أهلك و خاصتك.
تذكر بأن الوقت الذي تلهو فيه ، غيرك يبني مجده فيه.
الرد
#9
(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;

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


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم