AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

CT - Api / Chipkarten

Ein Thema von skullcrusher · begonnen am 22. Okt 2003 · letzter Beitrag vom 28. Okt 2003
Antwort Antwort
skullcrusher

Registriert seit: 22. Okt 2003
Ort: Sulzheim
56 Beiträge
 
Delphi 8 Architect
 
#1

Re: CT - Api / Chipkarten

  Alt 22. Okt 2003, 21:07
Hallo Wormid,


danke für die rasche und ausführliche Hilfe !
Leider hat es nicht funktioniert.
Wenn ich bei CT_data mein commando[0] durch Dein @commando ersetze
funktioniert zwar die Compilierung aber der Fehler bleibt der gleiche:
"EAccessViolation bei Adresse 10016D9 in Modul CTORG32.DLL"
(Die Dll ist die CT-Api)
Habe ich eine Chance irgendwie zu ermitteln welche Stelle genau den Fehler
verursacht ? In einer Dll wohl weniger oder ?

Hier mein Code mit dem ich es versuche:

************************************************** ********************
procedure TForm1.Button3Click(Sender: TObject);
var
daten:kdaten;
rueckgabe:word;
commando:array of byte;
speicher:array of byte;

begin
// Select file legt die zu empfangende Datensection fest !
setlength(speicher,2);
setlength(commando,8);
commando[0]:=$00;
commando[1]:=$04;
commando[2]:=$00;
commando[3]:=$88;
commando[4]:=$02;
commando[5]:=$3F;
commando[6]:=$00;
rueckgabe:=CT_data(1,02,01,Sizeof(commando),@comma ndo,2,@speicher);
showmessage(inttostr(rueckgabe));
end;
************************************************** *******************

Wie gesagt, davor funktioniert der CT_init, der Terminal sollte also bereit sein.
Die ganze Zeit bin ich davon ausgegangen, daß wenn ich die Funktion aus der Dll
geholt habe und das Programm compiliert bei der Angabe der Parameter kein Fehler
mehr vorliegen kann. Durch Probieren habe ich nun gemerkt, daß man sehr wohl
völlig falsche Parameter definieren kann ( Byte statt Pointer )
und keine Exception beim Programmstart auftritt.
Es könnte also sein das es schon an der Definition liegt.

*****************
function CT_init(ctn:word;pn:word):word;stdcall; external 'CTORG32.DLL'
function CT_data(ctn:word;dad:byte;sad:byte;lenc:word;comma nd:pointer;lenr:word;response:pointer):word;stdcal l;external 'CTORG32.DLL';
function CT_close(ctn:word):shortint;stdcall; external 'CTORG32.DLL'
*****************
´
So langsam werde ich ziemlich hilflos.
Das muss doch irgendwie zu machen sein......


Stephan
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz