# [VB6] USB Treiber-DLL Aufruf



## Tensi (16. Juli 2005)

Hi!

Bin inzwischen verzweifelt
Möchte eine USB-Treiber-DLL MPUSBAPI.DLL in einem VB-Projekt benutzen.
Die VB Deklaration sieht momentan so aus:

```
Declare Function MPUSBRead Lib "mpusbapi.dll" (ByVal handlee As Long, pData As Byte, ByVal dwLen As Long, pLength As Long, ByVal dwMilliseconds As Long) As Long
```
in C sieht der Funktionsaufruf so aus:

```
HANDLE myInPipe;
BYTE *ReceiveData
DWORD ExpectedReceiveLength = *ReceiveLength;
DWORD *ReceiveLength

MPUSBRead(myInPipe,ReceiveData,ExpectedReceiveLength,ReceiveLength,ReceiveDelay)
```
Jetzt ist meine Frage/mein Problem (sorry, bin Anfänger!): 
Scheinbar erwartet die DLL einen pointer auf Textfelder, etc. z. B. *ReceiveData. Wie sieht der Aufruf in VB aus?
Kann mir jemand ein Beispiel mit Variablen zeigen für diese Dll-Funktion (bitte...)
Hab´ schon viele Beiträge durchsucht, google gibt zu diesem Thema auch nichts brauchbares her ...

Bitte dringend um Hilfe  

Vielen Dank


----------



## Alex F. (18. Juli 2005)

Tensi hat gesagt.:
			
		

> ```
> Declare Function MPUSBRead Lib "mpusbapi.dll" (ByVal handlee As Long, pData As Byte, ByVal dwLen As Long, pLength As Long, ByVal dwMilliseconds As Long) As Long
> ```



in VB müsste es dann analog zu c so laufen


```
Dim hwnd As Long
    Dim pData As Byte
    Dim dwllen As Long
    Dim pLength As Long
    Dim dwmiliseconds As Long
    Dim lngRet As Long
    
    lngRet = MPUSBRead(hwnd, pData, dwllen, pLength, dwmiliseconds)
```

wobei ich nicht sehe wo du einen Pointer auf einen text erwartest da alle Werte nur longs bzw bytes sind und diese auch in VB vorhanden sind 

wahrscheinlich musst du die dwmiliseconds vorher noch setzten usw.


Grüsse bb


----------

