الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تشغيل برنامجي على الشبكة

مغلق
بدأه mohedss في 25 مايو 2007 · 9 رد · 1,252 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

لدي برنامج واريد تشغيله على الشبكة

الآن هو يعمل بشكل سليم على جهاز واحد (الرئيسي) ومربوط بقاعدة بيانات SQL Server

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

لكي لا يحدث تعليق للبرنامج في احد الاجهزة المرتبطة بالرنامج

على سبيل المثال قال لا تستخدم هذه الجملة لفتح الجدول

Set Users = New ADODB.Recordset
Users.Open "select * from Users", cnn, adOpenKeyset, adLockPessimistic

واقصد هنا adLockPessimistic

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

وقال لي استخدم adLockOptimistic

وآخر قال لي استخدم تقنية

Data Sources ODBC

للربط مع الداتا

وهكذا ..

فمن لديه اضافة او توضيح او مساعدة لتعم الفائدة فجزاه الله عنا كل خير

تحياتي للجميع

#2
اقتباس
وعلى حسب كلامه انها تغلق اتصال اكثر من جهاز في نفس الوقت مع الداتا

الكلام ده غلط هي بتقفل السجل الحالي اللي مؤشر احد الاجهزة واقف عليه و ضغط علي تعديل Edite فيجعله غير مرئي لباقي المتصلين بس يقدرو يتحكمه في باقي السجلات

اما adLockOptimistic

فهي بتخلي السجل مرئي حتي لو بيتعمله تعديل

فأنت اللي بتختار ايه اللي عايزه

تم تعديل هذه المشاركة بواسطة kindy_ibrahim في 26 مايو 2007 في 00:17

سبحان الله وبحمده عدد خلقه ورضا نفسه وزنة عرشه ومداد كلماته

#3

السلام عليكم

جرب ابحث عن كلمة "شبكة " في هذا القسم و ستجد العديد من المواضيع لها صلة و التي ستفيدك باذن الله

تحياتي

:)

gaza3-3.jpg
#4

ليه هي اجابتي غلط لسمح الله

ولا مش واثق في كلامي

علي العموم ده حرية شخصية

سبحان الله وبحمده عدد خلقه ورضا نفسه وزنة عرشه ومداد كلماته

#5
kindy_ibrahim كتب:
ليه هي اجابتي غلط لسمح الله

ولا مش واثق في كلامي

علي العموم ده حرية شخصية

ليه يا عم إبراهيم الزعل :)

العفو فوالله ماكان قصدي أن انقص من قدرك او من قدر إجابتك

فما انا إلا ضيف عابر ....

و ما كان قصدي إلا ان هناك فعلاً مواضيك قديمة ناقشت موضوع البرنامج و وضعيتة علي الشبكة

و كثير من الامور التي لها صلة بهذا الموضوع , إضافة إلي موضوع الاتصال او إعطاء صلاحيات ....

فلك العتبى حتي ترضي إخي الكريم

و ارجو المعزرة و السماحة مرة اخري

و تقبل خالص إحترامي

تم تعديل هذه المشاركة بواسطة إبراهيم الطيب في 26 مايو 2007 في 01:06

gaza3-3.jpg
#6

بالطبع ده مش زعل ده عتاب وزي مابيقوله اللي بتحبة عاتبه

يعني العتاب بين الاحباب وانا كنت بعتبك

لكن مش زعلان منك

:rolleyes:

سبحان الله وبحمده عدد خلقه ورضا نفسه وزنة عرشه ومداد كلماته

#7

يا جماعة ملوش لازمة الكلام ده كله

بالنسبة للسؤال فالافضل انك تصمم برنامج سيرفر يعمل كوسيط ويكون الاتصال من خلال ال Windows socket بكدة فتح قاعدة البيانات هيكون مقتصر على برنامج السيرفر اما باقى برامج الكلاينتس لن يكون دورها سوى ان تبعث له بالطلبات

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

#8

الحمد لله

gaza3-3.jpg
#9

طيب ما الـ SQL Server

شغالة بدور السيرفر هو احنا غاويين تعب وخلاص :wacko:

اخي حريف البرمجة في حاجة اسمها التخصص ومادام توفر لدي امكانيات سهله ليه ما استخدمهاش وكل العالم شغال بالطريقة ده

بس الادو ادتنا ميزة قالت لنا لو اتنين حبوا يفتحوا نفس السجل ممكن الاتتين يعدلة في نفس الوقت طبعاً ممكن تحصل مصايب

مثلاً لو انا عندي برنامج وبياناته دقيقة لو فتح احد الاجهزه سجل موجود داخل قاعدة بيانات وحب يعدل عليه ايه مصير السجل ده لو فيه واحد رخم تاني قاعد علي جهاز تاني وعايز يفتح نفس السجل تاني........... يبقي ايه مصير السجل ده

في حالة adLockPessimistic لو عملها قرد مش هيشوف السجل غير لما الاول يخلص تعديل

طيب

في حالة adLockOptimistic

يمكن الجهاز التاني يشوف السجل ويعدل علي السجل

والحكاية ده بتستخدم بكثرة في البرامج الكبيرة بل ممكن تلاقي الاتنين في برنامج واحد

adLockPessimistic&adLockOptimistic

تخيل انك في بنك

ممكن اكتر من جهاز فتح حساب عميل واحد في نفس الوقت (adLockOptimistic) بس لما يجي واحد يعدل علي بيانات العميل ده (adLockPessimistic) نلاقي الاجهزة التانية مش هتقدر تفتح البيانات قبل ما يتم التعديل

ارجو ان اكون قد اوضحت بالشكل الكافي

تم تعديل هذه المشاركة بواسطة kindy_ibrahim في 26 مايو 2007 في 01:50

سبحان الله وبحمده عدد خلقه ورضا نفسه وزنة عرشه ومداد كلماته

#10

يعني استخدام adLockPessimistic adLockoptimestic هو جزء من الحل وليس الحل

وكذلك استخدام adOpenKeyset adOpenstatic هذه كلها تقنيات للوصول الى الحل ولا يوجد بها حل سحري او استخدمها في كل مكان ويمشي الحال عال العال لكن على المبرمج ان يعرف متى يستخدم كل واحدة من هذه التقنيات في المكان المناسب والزمان المناسب بالاعتماد على نوعية البرامج التي يقوم بتطويرها

على سبيل المثال

اذا قام شخص بفتح سجل ما هل ساسمح لشخص اخر بفتح هذا السجل ام لا

اذا قام شخصين بالتعديل على سجل وقام الاول بالتخزين ماذا سافعل بالثاني الذي سيقوم بالتخزين بعد قليل

وهكذا بالنسبة لبقية الحركات وعلى هذا الاساس اقرر ماذا ساستخدم من تقنيات .

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

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

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…