Scard Server
-
Achso, Tschuldigung, habe zur toolbox nämlich nix gefunden.
Ich habe aber auf der Herstellerwebsite den Treiber und die Datei CTAPI.H gefunden und in den BCB6 inkludiert (#include "CTAPI.H"). Wie aber kann ich jetzt damit arbeiten? Wenn ich nen Button mache und als funktion
CT_init;
macht er keinen Fehler. Aber was für Argumente muss ich übergeben dass ich jedenfalls erkennen kann ob ne karte eingesteckt ist?
Hier der Code der H-Datei
/****************************************************************************/ /* */ /* Copyright 1995-2002 SCM Microsystems */ /* */ /* This software is supplied under the terms of a license */ /* agreement or nondisclosure agreement and may not be copied */ /* or disclosed except in accordance with the terms of that */ /* agreement. */ /* */ /****************************************************************************/ /* Name: CTAPI.H */ /* */ /* Description: Header file for CT-API DLLs */ /* */ /*--------------------------------------------------------------------------*/ /* History : */ /* Revision Date Author Description */ /* -----------------------------------------------------------------------*/ /* Version: 1.00: 22-Aug-1995 T.Maykranz Initial version for SwapSmart */ /* Version: 1.11: 25-JAN-1996 T.Maykranz CT-API version */ /* Version: 1.12: 20-JUN-1996 T.Maykranz *Lr handling corrected */ /* Version: 1.13: 25-JUN-1996 T.Maykranz memory model independant */ /* Version: 1.14: 23-SEP-1996 T.Maykranz CT-API from 20.09.96 */ /* Version: 1.15 08-JAN-1997, T.Maykranz 3A0,3C0 added */ /* Version: 1.16 16-JUN-2000, T.Maykranz CTAPI-PC/SC wrapper version */ /* Version: 1.17 12-SEP-2002, T.Maykranz cosmetics */ /****************************************************************************/ #ifndef CTAPIAPI #define CTAPIAPI #ifdef __cplusplus extern "C" { #endif /****************************************************************************/ /* return codes for CT_init, CT_data, CT_close: */ /****************************************************************************/ #define OK 0 /* Operation successful */ #define ERR_INVALID -1 /* parameter or data invalid */ #define ERR_CT -8 /* CT error (CT not ready) */ #define ERR_TRANS -10 /* transmission error */ #define ERR_MEMORY -11 /* error on allocate buffer */ #define ERR_HOST -127 /* abort by Host */ #define ERR_HTSI -128 /* HTSI error */ /****************************************************************************/ /* CT-API export functions: */ /****************************************************************************/ extern char WINAPI CT_init (unsigned short Ctn, /* logical terminal number */ unsigned short Pn); /* physical port number */ /* 0: auto detect */ /* 1: 1. reader */ /* 2: 2. reader */ /* 3: ... */ extern char WINAPI CT_close (unsigned short Ctn); /* logical terminal number */ extern char WINAPI CT_data (unsigned short Ctn, /* logical terminal number */ unsigned char FAR *Dad, /* destination address */ unsigned char FAR *Sad, /* source address */ unsigned short Lc, /* length of command in bytes */ unsigned char FAR *Cmd, /* command&data buffer */ unsigned short FAR *Lr, /* length of response in bytes */ unsigned char FAR *Rsp); /* answer */ /****************************************************************************/ #ifdef __cplusplus } #endif #endif
-
Hallo
Wenn du die Header gefunden hast wirst du sicher auch eine Dokumentation dazu finden, bzw. die Angaben in den Comments ausprobieren.
Allerdings bezweifle ich das dir die Header-datei alleine reicht :Description: Header file for CT-API DLLs
bis bald
akari
-
Das ist wieder eine typische Akari-Antwort, wenn er keine Lust hat zu helfen.
Die Tool Box gibt es nämlich nicht mehr und die verschieden threads hier zu dem Thema sind niemals gelöst worden.
-
Hallo
Also ich hab nur 1 Minute gebraucht um die Toolbox als Angebot zu finden...
Und ich bin mir auch sicher das auf so einer CD auch die komplette Dokumentation drauf ist.bis bald
akari
-
Danke für den Link,
ich habe es jetzt geschafft mich mit dem Leser zu verbinden (CT_init, siehe Header-Datei), da auch eine dll dabei war. Wie aber kann ich jetzt Daten lesen (CT_data (
,
,
) ?
-
Hallo, kann mir denn niemand helfen?
-
Hallo
Offenbar hat niemand hier schon mal diese Library benutzt. Schau also in die Doku oder auf die Homepage des Herstellers.
bis bald
akari
-
Hallo, habe jetzt dass hier gefunden:
http://www.heise.de/ix/artikel/2000/12/152/02.shtml
Die Befehle klappen, aber wie kann ich jetz Daten auslesen (bzw nur gucken ob ne Karte Steckt)?
-
Sorry, mein Programm (bzw der Quellcode vom Link ) gehen. Mein Kartenleser ist einfach nur kaputt.
Chipdrive
-
kannst Du mal was vom Code posten?
würde hier bestimmt noch mehr interessieren, die Frage war ja schon öfter.Gruß myerscola
-
Gerne, also hier ist "mein" Code:
#include "CTAPI.h" unsigned char ctn=0, dad, sad, cmd[261], rsp[258]; unsigned short lc, lr; int a; //--------------------------------------- /* Initialiserung der CT-API-Bibliothek */ CT_init( ctn, 0 ); dad = 01; sad = 02; /* Zurücksetzen*/ lr = sizeof( rsp ); a = CT_data( ctn, &dad, &sad, 4, (unsigned char*)"\x20\x11\x00\x00", &lr, rsp ); Label1->Caption = String(a); //Label1 = Fehlercode
Zum Daten lesen kann ich nichts sagen, da mein Leser defekt ist. Auf die Initialiserung antwortet er ganz normal, aber lesen, Rücksetzen etc geht nicht.
Deshalb: Guckt auf diese Seite