![]() |
AW: TSmartCard für Delphi 2010
Die DLL-Suche habe ich ebenfalls überarbeitet und überlasse nun LoadLibrary die Arbeit. Aber gut, auch ohne das sollte es ja gehen.
Versuch mal, den Wert vor der Übergabe an StrPas als PAnsiChar zu casten:
Delphi-Quellcode:
:-D
StrPas(PAnsiChar(@DllFile[1]))
|
AW: TSmartCard für Delphi 2010
Liste der Anhänge anzeigen (Anzahl: 1)
Habe mal auf meiner Festplatte gekramt und die Datei im Anhang gefunden. Hilft das?
Bei ![]() |
AW: TSmartCard für Delphi 2010
Hi und Danke erstmal,
habs jetzt kompilieren können. Hab jetzt eine SCARDCMP.INC - aber habe leider keine Ahnung, wie ich das Teil jetzt einbinden muss/zum Laufen bekomme. Könntest du mir da weiterhelfen? Wäre super.. Schorsch |
AW: TSmartCard für Delphi 2010
Uups - eben erst gesehen, dass da noch was kam. Habe mir mal downgeloadet und schaue es mir direkt mal an.
Supi - Danke erstmal - ich winke wieder.. Schorsch |
AW: TSmartCard für Delphi 2010
Hallo nochmal,
ich verzweifle bald :pale: Ich habe jetzt die Kompo zum Laufen gebracht und ein kleines Testprogramm erstellt. Wenn ich das jetzt starte und dann die Kompo auf active setze kommt "..missing SCARD32.DLL". Ich also die aktuellen Treiber runtergeladen und installiert - alles fehlerfrei. Die DLL stellte er mir jetzt nach Windows\SysWOW64. Fehler kam immernoch. Also ich diese in dem Verz per regsvr32 scard32.dll versucht zu registrieren, doch dann kommt ".. Modul wurde geladen der DllRegisterServer-Eingangspunkt wurde nicht gefunden. Stellen Sie sicher, blabla". Könnt ihr euch vorstellen woran das liegt? Danke.. Schorsch |
AW: TSmartCard für Delphi 2010
Pack mal die DLL in das Verzeichnis, in dem deine Anwendung liegt ...
|
AW: TSmartCard für Delphi 2010
hab ich gemacht - geht trotzdem nicht :-(
|
AW: TSmartCard für Delphi 2010
Immer noch der gleiche Fehler, dass er die DLL nicht finden kann? Mh, wie gesagt, das mir der Suche nach der DLL habe ich ebenfalls geändert - sicher nicht ohne Grund, aber welcher das war, weiß ich auch nicht mehr.
|
AW: TSmartCard für Delphi 2010
Nee - klappt immernoch nicht :roll: Vielleicht fällt dir (oder jemand anderem) ja doch nochwas ein.
Wäre super.. Tks trotzdem schonmal.. Schorsch |
AW: TSmartCard für Delphi 2010
Ja was hast du denn geändert?
Bei mir sieht SetActive so aus, wobei die Konstante DllFile vor meiner Änderung DllFile32 oder so ähnlich hieß:
Delphi-Quellcode:
procedure TSmartCard.SetActive(Value: Boolean);
var C,L,I: LongInt; S: AnsiString; begin if Value = FActive then exit; try SetCursor (LoadCursor (0, IDC_WAIT)); if Value then begin if FLibHandle > 0 then FreeLibrary(FLibHandle); FLibHandle:=2; FLibHandle:=LoadLibrary(DllFile); if FLibHandle < HINSTANCE_ERROR then Error('Invalid/missing SmartCard library '+ DllFile + ' (Error code '+IntToStr(FLibHandle)+')'+#13#10+ 'Pls. download latest version at: http://www.towitoko.de'); {$IFDEF SCARDDIR} FSCardComand:=SCardComand; {$ELSE} @FSCardComand:=GetProcAddress(FLibHandle, 'SCardComand'); {$ENDIF} if not Assigned(FSCardComand) then begin FreeLibrary(FLibHandle); FLibHandle:=0; Error('Invalid SmartCard library '+StrPas(PAnsiChar(@DllFile[1]))+ ' (version mismatch)'+#13#10+ 'Pls. download latest version at: http://www.towitoko.de'); end; FTDevHandle:=0; L:=-1; C:=0; S:=cmSystem+cmAddHWndMsg+ IntToStr(FWindowHandle)+','+IntToStr(TDEVMSG)+#0; I:=FSCardComand(L,@S[1],C,nil,C,nil,C); if (I > 0) or (L <= 0) then begin FreeLibrary(FLibHandle); FLibHandle:=0; Error('Cannot access SmartCard Server: '+IntToHex(I,4)); end; FTDevHandle:=L; FActive:=True; GetDeviceList; InsertMenuItems; end else begin try Comand(cmSystem+cmDelHWnd+IntToStr(FWindowHandle),nil,0,nil,0); except end; try Comand(cmSystem+cmDestroy,nil,0,nil,0); except end; FreeLibrary(FLibHandle); FLibHandle:=0; FActive:=False; end; finally Screen.Cursor:=crDefault; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:16 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