Erreur pour lire dans le registre [VB4] - Programmation
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é?
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 ...
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....
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 ???
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 ??? |
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