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

نسخة كاملة : خطأ بعد التحزيم Innosetup
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم
رمضان مبارك

لدي مشروع دلفي وقاعدة بيانات MSaccess
استخدمت المكون FDConnection

عند تحزيم هذا المشروع ببرنامج Inno setup ونقله وتنصيبه في كمبيوتر آخر لا يعمل وتظهر رسالة خطأ
Acceser violation  قمت بتتبع الخطأ فكان في مسار قاعدة البيانات

هل يمكن مساعدتي في كيفية ادراج ملف قاعدة البيانات بحيث لو تم عمل تنصيب للبرنامج في جهاز آخر ترفق من ضمن الملفات المدرجة في Programm files ويتم التعامل مع البرنامج على اي جهاز يتم تنصيبه عليه
يجب ان يتعرف البرنامج على مكان قاعدة البيانات عند التنفيذ
و ان لا يكون البرنامج يتعرف عليها بواسطة المكون مباشر
عليك بالبحث عن Connection String

كمثال التعرف على قاعدة بيانات FireBird عند الملف التنفيذي:

PHP كود :
begin

    
try
    FDConnection1.Connected := False;
    FDConnection1.Params.DriverID:='FB' ;

    FDConnection1.Params.Database :=  ExtractFilePath(Paramstr(0))+'GESTION.FDB'    ;
    FDConnection1.Params.Username := 'sysdba';
    FDConnection1.Params.Password := 'masterkey';
    FDConnection1.LoginPrompt := False;
    FDConnection1.Params.Add('CharacterSet=utF8');

    FDConnection1.Open;
    FDConnection1.Connected:=true ;

    FDTable1.TableName:='PRODUITS' ;
    FDTable1.Active:=true;

except
  ShowMessage
('خطأ في قاعدة البيانات'); 
شكرا الأخ bouh25 جربت الطريقة لكن لم تنجح
وعليكم السلام و تقبل الله صيامكم

تكون الصيغة كالتالي


كود :
procedure TForm1.FormCreate(Sender: TObject); var CheminDB:string; begin CheminDB:=ExtractFileDir(Application.ExeName) +'\dbdemos.mdb';   if FileExists(CheminDB) then begin       with FDConnection1 do begin         Close;         with Params do begin           Clear;           Add('DriverID=MSAcc');           Add('Database=' + CheminDB);         end;         Open;         //------ Table ------         FDTable1.TableName := 'country' ;         FDTable1.Open;       end;   end else     ShowMessage(' la base de données n''existe pas!'); end;

* قاعدة البيانات تكون بجانب الملف التنفيذي ، إذا كانت في مجلد كمثال Data تكون الكتابة كما يلي

كود :
CheminDB:=ExtractFileDir(Application.ExeName) +'\Data\dbdemos.mdb';


يوجد مثال في المرفقات
السلام عليكم
بعد تحزيم مشروع دلفي ببرنامج innosetup ونقله الى كمبيوتر آخر
تظهر هذه النافذة بعد التنصيب

[صورة: p_15814a5041.jpg]
(30-04-2020, 09:36 PM)appakar كتب : [ -> ]السلام عليكم
بعد تحزيم مشروع دلفي ببرنامج innosetup ونقله الى كمبيوتر آخر
تظهر هذه النافذة بعد التنصيب

[صورة: p_15814a5041.jpg]

وعليك السلام

هل برنامجك مربوط بـ ODBC
الاخ Larbiparadox
كيف يتم ربط البرنامج بالـ OBDC؟؟؟؟
ربما الاوفيس غير مثبت في الجهاز

يمكنك تحميل هذا و تنصيه في الجهاز يحل المشكل

https://www.microsoft.com/en-us/download...x?id=13255
السلام عليكم
جهاز الزبون يحتوي على Access ويشتغل بشكل عادي
لكن مشكل برنامجي مازال قائما
(03-05-2020, 11:15 PM)appakar كتب : [ -> ]السلام عليكم
جهاز الزبون يحتوي على Access ويشتغل بشكل عادي
لكن مشكل برنامجي مازال قائما

وعليك السلام

اذا امكن ارسلي على الخاص برنامج التثبيت