Hallo Leute,
ich sitze hier an einem Delphi Projekt und komme einfach nicht so recht
weiter.
Ich muss die Daten einer Chipkarte auslesen ( Krankenkassenkarte )
Eine Verbindung zum Cardreader stelle ich über die bekannte
CT-
Api Schnittstelle her.
Die CT-
Api dll habe ich eingebunden und über eine import
unit die
berühmten Funktionen CT_init, CT_data und CT_close nach
Delphi geholt.
Das alles klappt auch ohne Probleme, daher gehe ich davon aus, das
ich bei der Definition der Funktionen keine Fehler gemacht habe.
Das initalisieren über CT_init und der Close über CT_close funktionieren
auch ohne Probleme.
Nur mit dem CT_data Befehl tue ich mir schwer.
Sobald ich den meiner Meinung nach richtigen Befehl starte bekomme ich
regelmäßig eine
Access Violation .
Ich gehe davon aus, daß der Fehler in der Definition des commands liegt.
Laut Beschreibung wird hier ein Zeiger ( Pointer ) auf eine Adresse mit
dem command verlangt. Die Variable soll laut Beschreibung von der Form "byte"
sein.
Also habe ich ein Array of Byte definiert .
Darin dann die einzelnen Hex Angaben ( in der Form $00 ) abgelegt .
In der Doku ist leider nur ein VB Beispiel. Dort wird in der command Sektion
einfach ein Verweis auf das erste Element des Byte Arrays gesetzt.
Also in der Command Sektion einfach command [0] angegeben.
Das funktioniert aber offensichtlich nicht.
Dann versuchte ich, einen Pointer auf das Byte Array zu setzen und diesen anzugeben.
Auch das wurde mit gleicher Fehlermeldung quittiert.
Lange Rede, kurzer Unsinn:
Weiss jemand wie man einen command für die Funktion CT_data richtig angibt ?
Ich bin in Pointersachen leider ziemlich unerfahren.
Bin für jeden Hinweis dankbar,
Bis dann,
Stephan
PS: Wer bis hierhin gelesen hat, bekommt eine öfffentlich Belobigung !
Ich verspreche meine weiteren Beiträge hier werden kürzer !!!