منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : هل يمكن تبديل جملة الإتصال الموجوده داخل Module1
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم
أخوانى الأفاضل
لدى برنامج مصمم VB.NET 2008 مربوط بقاعدة بيانات على سيرفر


السؤال هل يمكن تبديل جملة الإتصال الموجوده داخل Module1 بجملة إتصال أخرى فى حالة عدم مقدرة البرنامج على الإتصال بقاعدة البيانات
جملة الإتصال تحتوى على رقم السيرفر أو إسم السيرفر - اسم قاعدة البيانات - كلمة السر الخاصة بقاعدة البيانات
اريد تبديل رقم السيرفر برقم اخر ؟؟

شكرا جزيلا
السلام عليكم ورحمة الله وبركاته

أعطيك فكرة بسيطة وهي تخزين آي بي السيرفر في ملف نصي بجانب الملف التنفيذي لبرنامجك واستدعائه عند إجراء الاتصال بالسيرفر .

أولاً : أنشئ دالة كالتالي لقراءة الملف النصي :
كود :
Public Function ServerIP(ByVal IpFile As String) As String
        Dim IP As String = Nothing
        Try
            If IO.File.Exists(IpFile) = True Then
                IP = My.Computer.FileSystem.ReadAllText(IpFile)
                If String.IsNullOrEmpty(IP) Then
                    Return Nothing
                End If
            End If
            Return IP
        Catch ex As Exception
            MsgBox("تعذر العثور علي رقم السيرفر")
            Return Nothing
        End Try
    End Function

ثانياً : في جملة الاتصال بدل ما تكون هكذا :
كود :
Dim conString As String = "Server=192.168.1.1;Database=myDataBase;User Id=myUsername;Password=myPassword"

تكون هكذا :
كود :
Dim conString As String = "Server=" & ServerIP("IpFile.txt") & ";Database=myDataBase;User Id=myUsername;Password=myPassword"

يمكنك حماية الملف النصي بتغيير امتداده مثلا لامتداد آخر .

كما قلت الطريقة بسيطة وبالتأكيد توجد طرق أخرى أكثر احترافية ...

****
***
**
*
مشكور أخى الكريم فكرة جيدة ولكن هل يمكن إستخدامها داخل المديول علما بان كل ما بداخل المديول يستخدم عند بداية تشغيل البرنامج وايضا عند فتح المشروع يفتح على شاشة اسم المستخدم والرقم السرى اللذى يتم التحقق منهما من قواعد البيانات الموجوده داخل السيرفر !!
نعم يمكن استخدامها في المديول
أخى الكريم
مشكور على مشاركتك

ولكن كيف استبدل رقم السيرفر برقم أخر

قمت بكتابة الرقم الأخر داخل
Catch ex As Exception
تم إرفاق المشروع

يقوم البرنامج بالوقوف عند فتح الإتصال
أخى العزيز هل توصلت إلى حل
طبعاً لا يمكنني الاتصال لأن قاعدة بياناتك ليست موجودة عندي ...

علي العموم انا بستخدم النص التالي للاتصال بقاعدة بيانات علي شبكة محلية (Server) :
كود :
Dim strConn As String = "Data Source=YourSeverIP;Network Library=DBMSSOCN;Initial Catalog=YOURDATABASENAME;User ID=YOURUSERNAME;Password=YOURPWD;Connection Timeout=15"

في كود اتصالك يوجد رقم ما عرفت إيه هو (ملون بالأحمر) :
كود :
...pcname & "\SQLEXPRESS,[color=#ff0000]1433[/color];Initial Catalog=PLM;...
الرقم الموجود هو رقم البورت الافتراضي لمشغل قواعد البيانات

اما بخصوص سؤالي عند فشل الاتصال بالسيرفر الرئيسي هل يمكن تحويل جمله الاتصال الموجوده داخل المديول بجمله اتصال اخري
إقتباس :
هل يمكن تحويل جمله الاتصال الموجوده داخل المديول بجمله اتصال اخري
طبعا يمكن اخي بل يمكنك حتى افراغ المتغير ..
مثلا المتغير str معرف بالموديول تعريف عمومي
كود :
Public str As String = "saud"

يمكن ان نتحكم بالقيمة كالتالي:
كود :
str=""
يعني فارغ

هذا بشكل عام
اما بخصوص جملة الاتصال فيمكنك تقسيم جملة الاتصال الى عدة اقسام كل قسم بمتغير مثلا اسم القاعدة قسم وكلمة المرور قسم والسيرفر قسم والاي بي قسم .