C-API-Technische Sicherheitseinrichtungen Kasse

Fragen rund um diverse Windows-Versionen, ihr Verhalten unter Xbase++ und den Umgang mit der API

Moderator: Moderatoren

Antworten
miwe-pos
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 28
Registriert: Mi, 26. Dez 2018 18:13

C-API-Technische Sicherheitseinrichtungen Kasse

Beitrag von miwe-pos »

Ab 1.1.2020 müssen Kassen eine Technische Sicherheitseinrichtung für die Finanzbehörden besitzen.
Aus Lieferschwierigkeiten ist der Termin erstmal bis 30.9.2020 verlängert worden.
Die Anbieter (EPSON, Swissbit,Bundesdruckerei) bieten C-DLL's bzw. C-Lib's zum einbinden in andere Programme an.
In der Xbase++ C-Api wird zwar beschrieben, wie eigene C-Programme eingebunden werden
können, doch wie der Zugriff auf die C-Funktionen der fremden DLL
bzw. Lib in das eigene Programm erfolgt,
ist meines Erachtens nicht genügend beschrieben!

Hat vielleicht jemand dafür Beispiele bzw. kann einen helfenden Tip geben?
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: C-API-Technische Sicherheitseinrichtungen Kasse

Beitrag von Jan »

Hallo miwe-pos,

die Wissenbasis ist kein guter Platz für die Frage. Hier werden fertige Lösungen, Tools, etc. gepostet.

Ich möchte Dir das mit der C-API nicht ausreden. Aber warum? Bei Epson z. B. kannst Du ja die Sockets nutzen, um die Daten auszutauschen. Dann muß man keine Fremdbibliotheken nutzen.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: C-API-Technische Sicherheitseinrichtungen Kasse

Beitrag von brandelh »

Da bist du auf dem falschen Weg, die Xbase++-C-API ist für was anderes.

System oder C-DLLs aufzurufen macht man ... je nach Version mit anderen Funktionen:

1. DLLCALL() oder ab 2.00 auch mit EXTERN Befehl
2. Pablos OT4XB ... Beispiel hierfür sind z.B. meine Klassen für den Zugriff auf QuickPDF (XBPrintPDF) oder LibXL (HBLibXL).

Hierzu findest du hier verschiedene Diskussionen, meist unter API Zugriffe und auch Beispiele im Source Verzeichnis der Installation:
:arrow: ...\source\samples\basics\ExtDll

Stimmt verschieben muss ich das auch ....
PS: die Schriftgröße oben signalisiert, dass du uns anschreien willst, ist nicht nötig ;-)
Gruß
Hubert
miwe-pos
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 28
Registriert: Mi, 26. Dez 2018 18:13

Re: C-API-Technische Sicherheitseinrichtungen Kasse

Beitrag von miwe-pos »

Hubert und Jan,
danke für Eure schnelle Reaktion.
Zuerst "Anschreien" will ich niemand. Schreibt die Schriftgröße meiner Unerfahrenheit im Forum zu!
(Mein erster Beitrag)
Jan, was Du mit Sockets meinst, sind für mich "Böhmische Dörfer"? Aber ich will auch nicht die EPSON-TSE nutzen.
Ich pendle zwischen Swissbit-Api und Bundesdruckerei-API (genauer "Cryptovision")
Hubert,
Dein Beispielprogramm habe ich gefunden.
Werde mal selbst eperimentieren. Wenn ich eine Frage habe, melde ich mich wieder.
Also nochmals danke Euch beiden.
Beste Grüße

Michael
(miwe in miwe-pos steht für Michael wetterhahn)
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: C-API-Technische Sicherheitseinrichtungen Kasse

Beitrag von brandelh »

miwe-pos hat geschrieben: Mi, 15. Jan 2020 14:44 Zuerst "Anschreien" will ich niemand. Schreibt die Schriftgröße meiner Unerfahrenheit im Forum zu!
(Mein erster Beitrag)
das dachte ich mir :-)

Frag ruhig, wenn du Infos brauchst.

Hast du eigentlich die 1.90 oder die 2.00 im Einsatz ?
Gruß
Hubert
miwe-pos
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 28
Registriert: Mi, 26. Dez 2018 18:13

Re: C-API-Technische Sicherheitseinrichtungen Kasse

Beitrag von miwe-pos »

Hallo Hubert,
z.Zt. beide
Gruß
michael
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: C-API-Technische Sicherheitseinrichtungen Kasse

Beitrag von brandelh »

Mit der 2.0 und dem EXTERN Befehl kann man die Definition am Ende einer PRG machen (meist eine Zeile) und davor eine Klasse, die gekapselt auf diese Befehle zugreift.
So kann man einen Quellcode für ANSI und OEM halten und eventuelle umständliche Anpassungen vom eigenen Programm fern halten.

Mit der 1.90 und DLLCALL() kann man so ähnlich vorgehen, wenn die Rückgabewerte immer LONG Vars sind und als Parameter nur LONG, StringPointer oder normale Zahlen benötigt werden.
Double als Parameter geht nicht und die Rückgabe von Strings ist auch nicht möglich. Hier braucht man dann Pablos OT4XB, die kommt mit allem zurecht. Beispiele für Aufrufe mit allen möglichen parametern in meiner HBPrintPDF.PRG
Gruß
Hubert
Antworten