[VB4] Erreur pour lire dans le registre

Erreur pour lire dans le registre [VB4] - Programmation

Marsh Posté le 24-10-2001 à 16:57:46    

J'ai téléchargé un module pour lire et écrire dans le registre en VB, mais lorsque je veux lire une chaine (string), le compilo me dis un probl sur lValueType, ce problème est présent en VB 4 et pas en vb6 !!!
 
Voilà le bout du module ki permet de lire une string.
Les fonction de création et de lecture de dword marchent impec...
 
 
 
Public Function getstring(Hkey As Long, strPath As String, strValue As String)
Dim keyhand As Long
Dim datatype As Long
Dim lResult As Long
Dim strBuf As String
Dim lDataBufSize As Long
Dim intZeroPos As Integer
r = RegOpenKey(Hkey, strPath, keyhand)
lResult = RegQueryValueEx(keyhand, strValue, 0&, lValueType, ByVal 0&, lDataBufSize)
If lValueType = REG_SZ Then
    strBuf = String(lDataBufSize, " " )
    lResult = RegQueryValueEx(keyhand, strValue, 0&, 0&, ByVal strBuf, lDataBufSize)
    If lResult = ERROR_SUCCESS Then
        intZeroPos = InStr(strBuf, Chr$(0))
        If intZeroPos > 0 Then
            getstring = Left$(strBuf, intZeroPos - 1)
        Else
            getstring = strBuf
        End If
    End If
End If
End Function


---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com
Reply

Marsh Posté le 24-10-2001 à 16:57:46   

Reply

Marsh Posté le 24-10-2001 à 17:06:58    

juju_le_barbare a écrit a écrit :

J'ai téléchargé un module pour lire et écrire dans le registre en VB, mais lorsque je veux lire une chaine (string), le compilo me dis un probl sur lValueType, ce problème est présent en VB 4 et pas en vb6 !!!
 
Voilà le bout du module ki permet de lire une string.
Les fonction de création et de lecture de dword marchent impec...
 
 
 
Public Function getstring(Hkey As Long, strPath As String, strValue As String)
Dim keyhand As Long
Dim datatype As Long
Dim lResult As Long
Dim strBuf As String
Dim lDataBufSize As Long
Dim intZeroPos As Integer
r = RegOpenKey(Hkey, strPath, keyhand)
lResult = RegQueryValueEx(keyhand, strValue, 0&, lValueType, ByVal 0&, lDataBufSize)
If lValueType = REG_SZ Then
    strBuf = String(lDataBufSize, " " )
    lResult = RegQueryValueEx(keyhand, strValue, 0&, 0&, ByVal strBuf, lDataBufSize)
    If lResult = ERROR_SUCCESS Then
        intZeroPos = InStr(strBuf, Chr$(0))
        If intZeroPos > 0 Then
            getstring = Left$(strBuf, intZeroPos - 1)
        Else
            getstring = strBuf
        End If
    End If
End If
End Function  




 
est pas déclaré?


---------------
Si j'etais Dieu, et ben j'croirai pas en moi..Et si j'etais moi, et ben j'me mefierai
Reply

Marsh Posté le 24-10-2001 à 17:27:27    

mandrin0 a écrit a écrit :

 
 
est pas déclaré?  




 
Je l'ai déclaré en tant que string, même problème ...


---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com
Reply

Marsh Posté le 24-10-2001 à 17:50:43    

juju_le_barbare a écrit a écrit :

 
 
Je l'ai déclaré en tant que string, même problème ...  




 
message d'erreur?
de toute facon je pense que c'est un Long....


---------------
Si j'etais Dieu, et ben j'croirai pas en moi..Et si j'etais moi, et ben j'me mefierai
Reply

Marsh Posté le 25-10-2001 à 08:29:48    

mandrin0 a écrit a écrit :

 
 
message d'erreur?
de toute facon je pense que c'est un Long....  




 
Le méssage d'erreur est 'Type d'argument ByRef incompatible'
Je le déclare en Long, et ça marche !!! Merci !
Comment tu savais que c'était Long ???


---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com
Reply

Marsh Posté le 25-10-2001 à 09:57:01    

juju_le_barbare a écrit a écrit :

 
 
Le méssage d'erreur est 'Type d'argument ByRef incompatible'
Je le déclare en Long, et ça marche !!! Merci !
Comment tu savais que c'était Long ???  




 
  :sol:


---------------
Si j'etais Dieu, et ben j'croirai pas en moi..Et si j'etais moi, et ben j'me mefierai
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed