delphi4arab منتديات دلفي للعرب
في محاولة الانتقال من الإنتربيز إلى الفايربيرد - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : في محاولة الانتقال من الإنتربيز إلى الفايربيرد (/showthread.php?tid=8089)

الصفحات: 1 2 3


في محاولة الانتقال من الإنتربيز إلى الفايربيرد - أبو معاذ - 13-08-2016

السلام عليكم ورحمة الله وبركاته ،
برمجت تطبيقا باستعمال الدلفي 7   مع قاعدة البيانات Interbase 7.5 server  ،
المكونات المستعملة في الاتصال بقاعدة البيانات هي مكونات IBX   Interbase Express.
التطبيق يعمل بشكل عادي لكن مع مشكلة الترخيص Licence  ، أود الانتقال إلى الفايربيرد   Firebird 2.5.6   ، لكن دون التغيير في البرنامج. (أقصد مكونات الاتصال).
قمت بتثبيت الفايربيرد (يدويا Blush  ) قمت بتغيير البورت Port  إلى 3057  لأن 3050  خاص بالإنتربيز.
وهذه هي التغييرات التي قمت بها على الملف  Firebird.conf

كود :
#RemoteServiceName = gds_db #RemoteServicePort = 3050 RemoteServiceName = gds_dbF RemoteServicePort = 3057


جربت المكونات Zeoslib للتحقق بأن الفايربيرد يعمل ، نجحت المهمة .
لكن مشكلتي مع مكونات ال IBX  كما هو موضح في الصورتين :
[صورة: 388587729.png]

الخطأ الصادر :

[صورة: 373042760.png]

رغم أنني قمت بالتغييرات اللازمة على ملف   Service  الموجود في المسار
C:\Windows\System32\drivers\etc

كالآتي :
[صورة: 673616599.png]


RE: في محاولة الانتقال من الإنتربيز إلى الفايربيرد - محمد عبد العزيز - 13-08-2016

وعليكم السلام ورحمة الله

هل بامكانك ارفاق مثال صغير، به قاعدة بيانات بها ولو جدول ومحاولتك للاتصال



RE: في محاولة الانتقال من الإنتربيز إلى الفايربيرد - أبو معاذ - 13-08-2016

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

المثال باستعمال ZeosLib 7.1.4-stable   ومكونات الاتصال IBX.


RE: في محاولة الانتقال من الإنتربيز إلى الفايربيرد - أبو معاذ - 13-08-2016

السلام عليكم ورحمة الله وبركاته ،
استعملت برنامج  اسمه TCPView لمعرفة إذا  ما كان فعلا الفايربيرد يستعمل المنفذ 3057  ،
فوجدت أنه  يعرض اسم ال Instance بدلا من رقم المنفذ 3057
فغيرت تعليمة الربط بقاعدة البيانات :
كانت بهذا الشكل :

كود :
127.0.0.1/3057:C:\MyApplication\MyDataBase.fdb

إلى


كود :
127.0.0.1/gds_dbF:C:\MyApplication\MyDataBase.fdb

 ونجح الاتصال ولله الحمد و المنة. Wink


RE: في محاولة الانتقال من الإنتربيز إلى الفايربيرد - محمد عبد العزيز - 13-08-2016

قمت بتثبيت Firebird-2.5.6.27020
حربت المثال على دلفي 5 لانه مثبت عندي
حربت Local تم الاتصال
حربت Distante بip محلي تم الاتصال
حربت Distante بip حهاز بالشبكة تم الاتصال

[صورة: 754375288.png]


RE: في محاولة الانتقال من الإنتربيز إلى الفايربيرد - أبو معاذ - 13-08-2016

جزاك الله خيرا على اهتمامك أخي عبد العزيز.
هل كلا من الفايربيرد و الأنتربيز مثبتين عندك في نفس الجهاز؟


RE: في محاولة الانتقال من الإنتربيز إلى الفايربيرد - محمد عبد العزيز - 13-08-2016

لا
قمت بتثبيت Firebird-2.5.6 فقط للتجربة
interbase غير مثبت

انتبه يحصل تعارض في مكتبة
gds32


RE: في محاولة الانتقال من الإنتربيز إلى الفايربيرد - أبو معاذ - 14-08-2016

(13-08-2016, 11:36 PM)B.M.AbdelAziZ كتب :

انتبه يحصل تعارض في مكتبة
gds32
لقد قمت بتثبيت يدوي للفايربيرد .
أظن أنه بهذه الطريق لا يُوَلٍد المكتبة gsd32  ؟


RE: في محاولة الانتقال من الإنتربيز إلى الفايربيرد - محمد عبد العزيز - 14-08-2016

نعم
عليك بنسخ fbclient.dll وتسميتها gds32.dll ووضعها في مكان لايحدث تعارض مع Interbase حتى يستخدمها برنامجك ول ايستخدم غيرها
على ما اتذكر مكونات ibx تتعامل مع gds32.dll ولا تعمل دونها
firebird كما تعلم مشتق من ملفات الشيفرة المصدرية لinterbase 6 ومنه هو متوافق 100% حتى اصدار 1.5
مع الاصدار 2 وما فوق بدأ الاختلاف لذلك من الاحسن تجربة برنامجك جيدا



RE: في محاولة الانتقال من الإنتربيز إلى الفايربيرد - أبو معاذ - 14-08-2016

السلام عليكم ،

إقتباس :عليك بنسخ fbclient.dll وتسميتها gds32.dll ووضعها في مكان لايحدث تعارض مع Interbase حتى يستخدمها برنامجك ول ايستخدم غيرها

gds32.dll  الخاصة بالإنتربيز موجودة في المسار  C:\windows syswow64
فأين  يمكن أن أضع ملف Fbclient.dll  الخاص بالفايربيرد ؟
على فكرة ، هذه مرحلة انتقالية فقط (للتصدير البيانات من Interbase  إلى Firebird)  ثم أقوم بالتخلص ( Dodgy ) من الإنتربيز نهائيا  (طبعا بعد أداء واجب الشكر له على السنوات الطوال اي منذ   2006  Tongue )