Neues Thema starten

Delphi 2006 String-Typen beim DLL Zugriff

 Hat jemand Erfahrung mit dem Zugriff auf die Swisbit-TSE unter Delphi 2006?


Wir scheitern an der Übermittlung von Strings (z.B. die Admin Pin).


Wir versuchen es mit PWideString bekommen als WormError jedoch WORM_ERROR_INVALID_PARAMETER zurück.


PChar geht auch nicht.


Wären sehr Dankbar für Hilfe.

 

1 Kommentar

Hallo Hans-Jürgen,


die Übertragung von Strings ist auch glaube ich das schwierigste an der ganzen Sache...


Wir arbeiten mit Delphi XE10 und machen es wie folgt:

  

function TSwissbitAccess.userLogin(userId : WormUserId; pin : string) : WormError;
var
  err : WormError;
  bytes : TBytes;  // kein SetLength notwendig!
  pRemainingRetries : Integer;
begin
  bytes := TEncoding.UTF8.GetBytes(pin);

  // 1 Fehler war: @bytes und nicht @bytes[0] zu haben!!
  err := worm_user_login(pContext, userId, @bytes[0], length(pin), @pRemainingRetries);
  iRemainingRetries := pRemainingRetries;

  Result := err;
end;

 Freue mich immer über Feedback!

Anmelden oder Registrieren um einen Kommentar zu veröffentlichen