AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Smartcard auslesen, Kommandos senden
Thema durchsuchen
Ansicht
Themen-Optionen

Smartcard auslesen, Kommandos senden

Ein Thema von newuser01 · begonnen am 8. Nov 2011 · letzter Beitrag vom 9. Nov 2011
Antwort Antwort
Seite 5 von 7   « Erste     345 67      
Micha88
(Gast)

n/a Beiträge
 
#41

AW: Smartcard auslesen, Kommandos senden

  Alt 9. Nov 2011, 15:41
Zitat:
Das müssen sie bei der Vorgehensweise sein. Nur wenn man später mal was ändert (umsortiert z.B.), dann kann schnell übersehen werden, dass die Funktion entsprechend anzupassen ist. Daher mein Einwand.
Ach so, ok.

Ich regel so etwas normalerweise immer mit Arrays. Ich habe mehrere Arrays, welche ineinander greifen. Ändere ich mein erstes Array (String-Array, Inhalt von einer ComboBox z.B.), so ändert sich durch Bedingungen im Code alles bei den anderen Arrays mit.

Mies erklärt, ich weiß, aber anders kann ich es nicht erklären.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#42

AW: Smartcard auslesen, Kommandos senden

  Alt 9. Nov 2011, 15:43
Vielleicht sollten wir dafür einen eigenen Thread eröffnen, das hat ja mit dem eigentlichen Problem höchstens am Rande zu tun.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#43

AW: Smartcard auslesen, Kommandos senden

  Alt 9. Nov 2011, 15:57
Was passiert wenn Du
auf einem
Button
ComPort.WriteStr(#$99); hast

auf einem anderen
ComPort.WriteStr(#$01#$02#$00#$00#$00#$00#$3C); FInBuffer als Klassen oder auch mal als globale Variable

Delphi-Quellcode:
Function Hexit(const s:AnsiString):String;
var
 i:Integer;
begin
 Result := '';
 for I := 1 to Length(s) do Result := Result +'$' +IntToHex(Byte(s[i]),2) +' ';
end;


procedure TwasAuchImmer.Comport1RxChar(Sender: TObject; Count: Integer);
var
  s:AnsiString;
begin
    BaseSerial1.ReadStr(s,Count);
    FInBuffer := FInBuffer + s;
    Memo1.Text := Hexit(FInBuffer );
end;
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
newuser01

Registriert seit: 31. Aug 2006
248 Beiträge
 
Delphi 7 Professional
 
#44

AW: Smartcard auslesen, Kommandos senden

  Alt 9. Nov 2011, 16:17
Was passiert wenn Du
auf einem
Button
ComPort.WriteStr(#$99); hast

auf einem anderen
ComPort.WriteStr(#$01#$02#$00#$00#$00#$00#$3C); FInBuffer als Klassen oder auch mal als globale Variable

Delphi-Quellcode:
Function Hexit(const s:AnsiString):String;
var
 i:Integer;
begin
 Result := '';
 for I := 1 to Length(s) do Result := Result +'$' +IntToHex(Byte(s[i]),2) +' ';
end;


procedure TwasAuchImmer.Comport1RxChar(Sender: TObject; Count: Integer);
var
  s:AnsiString;
begin
    BaseSerial1.ReadStr(s,Count);
    FInBuffer := FInBuffer + s;
    Memo1.Text := Hexit(FInBuffer );
end;
FInBuffer: AnsiString; //so als globale variable ?

Wenn ja dann steht bei

ComPort.WriteStr(#$99); das "$99" im Memo1.Text

und bei

ComPort.WriteStr(#$01#$02#$00#$00#$00#$00#$3C); das "$01 $02 $00 $00 $00 $00 $3C "
Gruß: Holger

[Hobby-Programmierer]
  Mit Zitat antworten Zitat
newuser01

Registriert seit: 31. Aug 2006
248 Beiträge
 
Delphi 7 Professional
 
#45

AW: Smartcard auslesen, Kommandos senden

  Alt 9. Nov 2011, 16:21
Bevor wir hier weiter machen, hab ich mal die andere Komponente ASYNC PRO (API) mir angeschaut, da gibt es Sachen wie


ApdComPort1 kann man über die Eigenschaften verbinden mit ApdTapiDevice1

ApdTapiStatus1 kann man verbinden mit ApdTapiDevice1

ApdTapiLog1 kann man verbinden mit ApdTapiStatus1

und so weiter..........


senden kann man dann zb. so

Delphi-Quellcode:
ApdComPort1.ComNumber := 2;

ApdComPort1.Baud := 9600;
ApdComPort1.Parity := pNone;
ApdComPort1.DataBits := 8;
ApdComPort1.StopBits := 2;

ApdComPort1.Open := true;

ApdComPort1.Output := 'Inhalt was man senden will';
Ist es mit diesen API Komponenten vielleicht einfacher ? die ganze Sache zu realisieren? Ich hab nur noch nicht rausgefunden was ich noch fürs Answer brauch

Doku dazu hab ich hier http://tpapro.sourceforge.net/Faq.html auch gefunden
Gruß: Holger

[Hobby-Programmierer]

Geändert von newuser01 ( 9. Nov 2011 um 16:25 Uhr)
  Mit Zitat antworten Zitat
bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.138 Beiträge
 
Delphi 11 Alexandria
 
#46

AW: Smartcard auslesen, Kommandos senden

  Alt 9. Nov 2011, 16:32
welcher Leser (COM oder USB) und welcher Karten Type (Synchron oder Ascychron)

am Besten via PC/SC - Windows Funktionen mit der Karte reden
  Mit Zitat antworten Zitat
mquadrat

Registriert seit: 13. Feb 2004
1.113 Beiträge
 
Delphi XE2 Professional
 
#47

AW: Smartcard auslesen, Kommandos senden

  Alt 9. Nov 2011, 16:34
welcher Leser (COM oder USB) und welcher Karten Type (Synchron oder Ascychron)

am Besten via PC/SC - Windows Funktionen mit der Karte reden
PC/SC hatte ich auf der ersten Seite schon vorgeschlagen. Scheinbar soll/muss es unbedingt über den COM-Port gehen. Warum auch immer.
  Mit Zitat antworten Zitat
bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.138 Beiträge
 
Delphi 11 Alexandria
 
#48

AW: Smartcard auslesen, Kommandos senden

  Alt 9. Nov 2011, 16:37
alte Telfonwertkarten und COM Port mag noch OK sein, bei den Controller Karten (Geldkarte, SIM, Ausweis, ....) exterm viel Arbeit die Protokolle(T=1, T=0, ....) zu implementieren
  Mit Zitat antworten Zitat
newuser01

Registriert seit: 31. Aug 2006
248 Beiträge
 
Delphi 7 Professional
 
#49

AW: Smartcard auslesen, Kommandos senden

  Alt 9. Nov 2011, 16:52
welcher Leser (COM oder USB) und welcher Karten Type (Synchron oder Ascychron)

am Besten via PC/SC - Windows Funktionen mit der Karte reden

Reader ist ein Cas3, angeschlossen (Strom USB) + Serielles Kabel an Com1. Über "Cas Interface Studio" kann ich dann auf PHOENIX Modus 6 MHz einstellen, was ich ja bei der Karte auch brauch. (Synchron oder Ascychron) kann ich nicht beantworten, ist ne alte S02 Karte

ATR: 3B 9F 21 0E 49 52 44 45 54 4F 20 41 43 53 03 84 55 FF 80 6D

[;.!.IRDETO ACS..U..m]
Gruß: Holger

[Hobby-Programmierer]
  Mit Zitat antworten Zitat
newuser01

Registriert seit: 31. Aug 2006
248 Beiträge
 
Delphi 7 Professional
 
#50

AW: Smartcard auslesen, Kommandos senden

  Alt 9. Nov 2011, 19:04
@Bummi

mit:

Delphi-Quellcode:
procedure Tfrm_main.btn_readcardClick(Sender: TObject);
begin

ComPort.Port := 'COM2';
ComPort.BaudRate := br9600;
ComPort.DataBits := dbEight;
ComPort.Parity.Bits := prEven;
ComPort.StopBits := sbOneStopBit;

//Kartenreset
ComPort.FlowControl.ControlRTS := rtsEnable;
ComPort.FlowControl.ControlRTS := rtsDisable;
ComPort.FlowControl.ControlDTR := dtrEnable;
ComPort.FlowControl.ControlDTR := dtrDisable;
end;

und dem:

Delphi-Quellcode:
procedure Tfrm_main.ComPortRxChar(Sender: TObject; Count: Integer);
var
s:AnsiString;
begin

ComPort.ReadStr(s,Count);
FInBuffer := FInBuffer + sEmpfangen;
e_atr.Text := Hexit(FInBuffer);
end;

bekomm ich schon mal den richtigen

ATR: $3B $9F $21 $0E $49 $52 $44 $45 $54 $4F $20 $41 $43 $53 $03 $84 $55 $FF $80 $6D


Allerdings stören mich noch die $ Zeichen in der Ausgabe
Gruß: Holger

[Hobby-Programmierer]
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 5 von 7   « Erste     345 67      


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 10:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz