Hit-Parade .VB Research Center . Compteur
Accueil ~  Code ~  Programmes ~  Api ~  Forum ~  Cours ~  Livres ~  Quiz ~  Annuaire
~ 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 ~
 Rechercher un site :
  

~ Partenaires ~

Fonction SQLAllocEnv

Declare Function SQLAllocEnv Lib "odbc32.dll" ( _
                 env
As Long) As Long
Versions :
. Windows 95/98 : Oui
. Windows NT : A partir de 3.1
. Windows 2000/XP : Oui

Description :
(origine : Philippe Plançon - plancon@onetelnet.fr)
Cette fonction alloue de la mémoire pour un handle d'environnement.
Si la fonction échoue, elle retourne un nombre négatif sinon elle retourne un nombre positif.
Le paramètre est passé par référence, c'est à dire que le paramètre prend la valeur du handle.

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

Visual Basic Research Center - (c) 2000/2002 -  Webmaster : docvb (chez) free (point) fr