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

مشكلة طول وقت الاتصال

بدأه medhatzayed في 17 أكتوبر 2011 · 8 رد · 655 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الاخوة الاعزاء

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

استخدم vb6 للاتصال بقاعدة sql server 2005

يوجد realip على الجهاز المثبت عليه sql

عند الاتصال البرنامج من داخل الشبكة المحلية لا توجد مشكلة

المشكلة عند الاتصال من الخارج . الاتصال يتم بنجاح و لكن فى وقت يزيد عن 30 ثانية او اكثر

اولا : كيف يمكن تقليل هذا الوقت ؟

ثانيا : كيف يمكن للبرنامج عرض اي كود اثناء الاتصال حتي لا يشعر المستخدم بطول مدة الاتصال علما بان البرنامج يتوقف عند الامر connection.open

شكرا

#2

السلام عليكم

هذه ليست مشكلة SQL server وانما مشكلة شبكات او بالاخص الانترنت فانت بحاجة الى خطوط انترنت اسرع .

#3

اخي الكريم شكرا للتفاعل

اذا كانت زيادة سرعة الانترنت فالمشكلة بسيطة

طيب كيف يمكن ان نقوم بتشغيل كود او تايمر اثناء الامر open

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

جربت التايمر و doevents

كل شئ يتوقف عند الامر open

#5

بصراحة بحثت و لكن ما توصلت لشئ

#6

السلام عليكم

الفكرة هي كما في الكود التالي :

Dim WithEvents con   As Connection
Dim isConneted As Boolean

Private Sub con_ConnectComplete(ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pConnection As ADODB.Connection)

isConneted = True
If pError Is Nothing Then

Else
    MsgBox pError.Description, vbCritical
    End 'Stop the program
End If

End Sub

Private Sub con_InfoMessage(ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pConnection As ADODB.Connection)

End Sub

Private Sub Form_Load()
Set con = New Connection
Const constr As String = "PROVIDER=SQLOLEDB.1;Password=pwd;Persist Security Info=True;User ID=sa;Initial Catalog=db;Data Source=.;"
con.Open constr, Options:=adAsyncConnect
Show
Do
DoEvents
'
Loop Until isConneted
End Sub

ولو تتبعت الكود ستجد عند الوصول الى جملة الاتصال سيتم اجتيازها دون الوقوف عليها وعند نجاح او فشل الاتصال سيتم اطلاق الحدث con_ConnectComplete

#7

بجد ما شاء الله عليك

و ربنا يزيدك من علمه

هاتقل عليك ازاي نجبر الكونكشن على ايقاف الاتصال اثناء الاتصال

تم تعديل هذه المشاركة بواسطة medhatzayed في 20 أكتوبر 2011 في 19:16

#8

اخي طارق

بالنسة لهذا الكود Dim WithEvents con As Connection

كيف يمكن استخدام con فى كل شاشات البرنامج ؟

اقصد كيف يصبح Public

#9

بالنسبة ايقاف الاتصال فلا اعرف الكيفية ولا اعرف ان كانت ممكنة ام لا .

اقتباس
كيف يمكن استخدام con فى كل شاشات البرنامج ؟

ضعه في Class او في فورم خاص واجعله Public

public WithEvents con As Connection

وعند الاستخدام

form1.con

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