كاتب الموضوع : shenosheno2008
انشاء oebc عند عمل الاتصال بالبرنامج برمجيااولا:
كود :
Imports Microsoft.Win32
ثانيا قم بتعريف المكتبة الدالة التالية
Private Declare Function SQLConfigDataSource Lib "ODBCCP32.dll" (ByVal hwndparent As Integer, ByVal frequest As Integer, ByVal lpszDriver As String, ByVal lpszAttributes As String) As Integer
من خلال الاجراء التالى يتم انشاء odbc سواء قاعدةالبيانات على هذا الجهاز ام على السرفر
trusted
or
not trusted
هذا هو الاجراء
Function create_odbc_dsn(ByVal server_name As String, ByVal dsn_name As String, ByVal driver_name As String, ByVal database_name As String, ByVal description As String, ByVal user_id As String, ByVal trusted As Boolean) As Boolean
Dim atrbute As String
atrbute = ""
atrbute = atrbute + "SERVER="
atrbute = atrbute + server_name
atrbute = atrbute + Chr(0)
atrbute = atrbute + "DSN="
atrbute = atrbute + dsn_name
atrbute = atrbute + Chr(0)
atrbute = atrbute + "DESCRIPTION="
atrbute = atrbute + description
atrbute = atrbute + Chr(0)
atrbute = atrbute + "DATABASE="
atrbute = atrbute + database_name
atrbute = atrbute + Chr(0)
If trusted = False Then
atrbute = atrbute + "TRUSTED_CONNECTION=NO"
Else
atrbute = atrbute + "TRUSTED_CONNECTION=YES"
End If
atrbute = atrbute + Chr(0)
If SQLConfigDataSource(0, 4, driver_name, atrbute) = 1 And Me.add_userid(user_id, dsn_name, trusted) = True Then
Return True
Else
Return False
End If
End Function
فى حالة not trusted يحتاج الى تعريف مستخدم كالتالى
Private Function add_userid(ByVal userid As String, ByVal dsn_name As String, ByVal trusted As Boolean) As Boolean
Try
If trusted = True Then
Return True
End If
Dim regkey, regsubkeysw As RegistryKey
Dim regsubkeyodbc, regsubkeyodbcini As RegistryKey
Dim regsales As RegistryKey
regkey = Registry.LocalMachine
regsubkeysw = regkey.OpenSubKey("SOFTWARE")
regsubkeyodbc = regsubkeysw.OpenSubKey("ODBC")
regsubkeyodbcini = regsubkeyodbc.OpenSubKey("ODBC.INI")
regsales = regsubkeyodbcini.OpenSubKey(dsn_name, True)
regsales.SetValue("LastUser", "sh")
Return True
Catch ex As Exception
Return False
End Try
End Function
انتهى
الكلاس فى المرفقات يمكنك فى شتاشة الاتصال تعريف نسخة من الكلاس وتمرير المتغيرات بتاع الاتصال الى الاجاء create_odbc_dsn