Les Snippets

Connexion

Connaitre la version du MDAC installé

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 08/12/2007 05:32:50 et initié par PCPT [Liste]
Vue : 3067
Catégorie(s) : Base de registre, API, Chaîne de caractères
Langages dispo pour ce code :
- VB6, VBA
- VBScript
- Voir tous les langages pour ce code snippet



Langage : VB6 , VBA
Date ajout : 08/12/2007
Posté par PCPT [Liste]
Private Const HKEY_CLASSES_ROOT As Long = &H80000000
Private Const KEY_ALL_ACCESS    As Long = &H3F
Private Const ERROR_SUCCESS     As Long = 0&
Private Const REG_SZ            As Long = 1&
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As LongAs Long
Private Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As LongByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As  Long
Private Declare Function RegQueryValueEx Lib "advapi32" Alias "RegQueryValueExA" (ByVal hKey As LongByVal lpValueName As String, ByVal lpReserved As Long, ByRef lpType As Long, ByVal szData As String, ByRef lpcbData As Long) As  Long
'
Function GetMDACVersion(Optional ByRef iMajor As Integer, Optional ByRef iMinor As Integer) As String
    Dim lRet As Long, lKeyHandle As Long, sBuffer As String, sRet As String
    GetMDACVersion = "0.00"
 
'   ouvre la  clé
    lRet = RegOpenKeyEx(HKEY_CLASSES_ROOT,  "MDACVer.Version\CurVer\"0&, KEY_ALL_ACCESS, lKeyHandle)
    If lRet = ERROR_SUCCESS Then
'       la clé existe, on  cherche la valeur
        sBuffer = String(256, vbNullChar)
        lRet = RegQueryValueEx(lKeyHandle, vbNullString, 0&, REG_SZ, sBuffer, Len(sBuffer))
        
        If lRet = ERROR_SUCCESS Then
'           pas d'erreur,  vérifie la valeur pour ne récupérer que le numérique
            lRet = InStrB(1, sBuffer, vbNullChar)
            If lRet > Then
                sRet = Trim$(LeftB$(sBuffer, lRet))
                GetMDACVersion = RightB$(sRet, 8)
            End If
        End If
'       on ferme la  clé
        Call RegCloseKey(lKeyHandle)
    End If
'   on recoupe la chaine  pour séparer Major/Minor
    iMajor = LeftB(GetMDACVersion, 2)
    iMinor = RightB(sRet, 4)
End Function

Remarque :
'   UTILISATION 1 :
MsgBox GetMDACVersion


'   UTILISATION 2 :
Dim iMaj%, iMin%
GetMDACVersion iMaj, iMin
MsgBox "Version : [" & iMaj & "].[" & iMin & "]"

Snippets en rapport avec : Version, Registre, Mdac, Major, Minor



Codes sources en rapport avec : Version, Registre, Mdac, Major, Minor

{C / C++ / C++.NET} REGISTRY GUARD BETA
Registry Guard est un programme très proche de Regmon de Sysinternals (http://www.sysinternals.com/U...

{Visual Basic, VB6, VB.NET, VB 2005} TESTER LA VERSION DU MDAC INSTALLÉ
reste à définir le mdac que vous utilisez Const V_MDAC As String = "2.8" puis Call testMdac...

{Delphi} USER ASSIST DECODER
Programme permettant de décoder les valeurs "UserAssist" contenues dans le registre windows. Ces ...

{Delphi} IP-MASTER, OU VOTRE IP FACILE !
Bonjour, cette application permet de vérifier à tout moment son adresse IP Internet et Locale, mais...

{Visual Basic, VB6, VB.NET, VB 2005} CONTRÔLER DES RESTRICTIONS ET LA CONFIG
Ayant eu à dépanner un PC fortement perturbé par un virus: Plus d'icônes pour les disque durs,plus d...

{Visual Basic, VB6, VB.NET, VB 2005} OUVRIR LE REGISTRE EN DÉFFINISSANT LA CLÉ DE SON CHOIX.
Sous Windows XP, lorsque vous exécutez « RegEdit.exe » pour accéder à la base de registres, celui-ci...

{Delphi} BLOQUER LE TASKMGR SANS CLÉ DE REGISTRE
Suite a une question que j'ai poser sur le forum en vain j'ai chercher et trouvé le moyen de b...

{Visual Basic, VB6, VB.NET, VB 2005} WMI, GESTION D'UNE MACHINE (LOCALE OU DISTANTE)
Bonjour tout le monde, Voici ma première source postée sur VB France. Et j'avoue que pour une pre...

{Visual Basic, VB6, VB.NET, VB 2005} FONCTIONS DE BASE DU REGISTRE
Cette sources contient les Fonctions de base du Registre Auteur original: www.zonegeeks.com ...

{Delphi} INFORMATIONS DISQUE ET SYSTEME
Bonjour tt le monde ;-) Ce petit programme nous permet d’obtenir: Le nom du volume du disque ;...