~ Edito ~
12/03/2006 @ 13:39
Depuis la dernière mise à jour (qui remonte à... oulala plusieurs mois), un petit ménage de printemps s'impose. Ca tombe bien, c'est presque la période. Au menu, et progressivement sur les jours à venir, rafraîchissement de plusieurs fonctions et procédures, nouvelles APIs et nouveaux programmes.
~ Rechercher ~
~ Annuaire VB ~
~ Partenaires ~
|
Fonction SQLAllocConnect
Declare Function SQLAllocConnect Lib "odbc32.dll" ( _ ByVal env As Long, _
hdbc As Long) As Long
Versions : . Windows 95/98 : Oui . Windows NT : A partir de 3.1 . Windows 2000/XP : OuiDescription : (origine : Philippe Plançon - plancon@onetelnet.fr)
Exemple d'utilisation :
' A mettre dans un module :
' Récupère le handle de fenêtre de l'application lancée
Declare Function GetActiveWindow Lib "user32.dll" () As Long
' Pour connaitre l'utilisateur courant
Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
' API SQL
Declare Function SQLAllocEnv Lib "odbc32.dll" (env As Long) As Long
Declare Function SQLAllocConnect Lib "odbc32.dll" (ByVal env As Long, Hdbc As Long) As Long
Declare Function SQLDriverConnect Lib "odbc32.dll" (ByVal Hdbc As Long, _
ByVal hwnd As Long, ByVal szCSIn As String, ByVal cbCSIn As Long, _
ByVal szCSOut As String, ByVal cbCSMax As Long, cbCSOut As Long, _
ByVal f As Long) As Long
Declare Function SQLAllocStmt Lib "odbc32.dll" (ByVal Hdbc As Long, HStmt As Long) As Long
' A mettre dans la feuille :
Private Sub Form_Load()
' Déclaration des variables
Dim Chaine As String
Dim Serveur As String
Dim stTmp As String
Dim User As String
Dim Cbout As Long
Dim lgTmp As Long
Dim blOk As Boolean
' Lit le nom de l'utilisateur courant de l'ordinateur
stTmp = Space$(250)
lgTmp = 251
Call GetUserName(stTmp, lgTmp)
User = Mid$(stTmp, 1, InStr(1, stTmp, Chr$(0)) - 1)
blOk = False
' Allocation de mémoire pour un handle d'environnement "HEnv".
If SQLAllocEnv(HEnv) = 0 Then
' Allocation d'un handle de connexion "Hdbc".
If SQLAllocConnect(HEnv, Hdbc) = 0 Then
' Etablir la connexion
Chaine = "UID=" & User
If SQLDriverConnect(Hdbc, GetActiveWindow(), Chaine, _
Len(Chaine), Serveur, Len(Serveur), Cbout, 1) = 0 Then
' Allocation d'un handle pour le handle d'une instruction.
If SQLAllocStmt(Hdbc, HStmt) = 0 Then blOk = True
End If
End If
End If
If Not blOk Then
MsgBox "Connexion impossible", vbCritical + vbOKOnly, "Erreur"
End If
End Sub
Retour à la liste des API |