mikrocontroller.net

Forum: PC-Programmierung TinyCan API mit Visual Basic nutzen


Autor: Volker (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich habe seit kurzem ein TinyCan Modul und würde dieses gerne über VB 
nutzen. Wenn ich die einzelnen API Funktionen als Funktion in VB 
deklariere (z.B.
Declare Function CanDeviceOpen Lib "mhstcan1.dll" (ByVal ComPort As String, ByVal ComPortBaudRate As String) As Byte
) dann klappt das auch schon ganz gut. Zumindest erhalte ich die 
erwarteten Rückgabewerte :-)

Nun hänge ich allerdings an einer Stelle, an der ich nicht mehr weiter 
komme und ich mir nicht sicher bin, ob der Ansatz über VB zielführend 
ist. Es gibt Funktionen der API, die einen Pointer erwarten, bzw. einen 
Pointer zurück liefern (z.B.
int CanTransmit(unsigned short index, struct TCanMsg *msg, int count)
).

Wie kann ich das in VB lösen? Bin für jede Hilfe dankbar!

Viele Grüße

Volker

Autor: Alexander K. (elektronikus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

einfach mal nach "VarPtr" googeln. Es handelt sich hierbei um eine 
undokumentierte Funktion von VB/VBA, welche die Adresse einer Variablen 
zurückliefert. Für die umgekehrte Richtung wird es allerdings etwas 
schwieriger ...

Autor: Sven P. (haku) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie isses denn mit ByRef ? Und: Achte drauf, was VB beim Aufruf von 
DLL-Funktionen schon automatisch umwandelt!

Autor: christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Volker,
habe den Tiny Can unter VB jetzt soweit das er CanNachrichten sendet. 
Allerdings sendet er keine Daten mit, sind immer null.
Hast du es bei deiner Software geschaft?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.