Utilisation de SetupDiGetDeviceInstanceId

Le
philippe_k
Bonjour,
Je travaille sur la traduction de code vb.net en vb6 et je suis bloqué par
l'utilisation de l'api SetupDiGetDeviceInstanceId (setupapi.dll).

En vb.net la déclaration était :
Private Declare Auto Function SetupDiGetDeviceInstanceId Lib "setupapi.dll"
( ByVal DeviceInfoSet As IntPtr, ByRef DeviceInfoData As SP_DEVINFO_DATA,
ByVal DeviceInstanceId As StringBuilder, ByVal DeviceInstanceIdSize As
Integer, ByRef RequiredSize As Integer ) As Boolean

Voici la déclaration que j'utilise en vb6:
Private Declare Function SetupDiGetDeviceInstanceId Lib "setupapi.dll" Alias
"SetupDiGetDeviceInstanceIdA" (ByRef DeviceInfoSet As Long, ByRef
DeviceInfoData As SP_DEVINFO_DATA, ByRef DeviceInstanceId As String, ByVal
DeviceInstanceIdSize As Long, ByRef RequiredSize As Long) As Long

A priori ce n'est pas bon car je n'obtiens pas de résultat correct en vb6.
La fonction me retourne toujours une valeur nulle, ce qui n'est pas le cas
en vb.net

Une idée pour me dépanner ?
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
philippe_k
Le #17883721
j'ai enfin trouvé !
Il fallait passer le premier paramètre par byval et non pas par byref.
Publicité
Poster une réponse
Anonyme