Einzelnen Beitrag anzeigen

Benutzerbild von Tonic1024
Tonic1024

Registriert seit: 10. Sep 2003
Ort: Cuxhaven
559 Beiträge
 
RAD-Studio 2009 Ent
 
#11

AW: Konvertierungsproblem C++/VB nach Delphi. Buffer als var Parameter in/aus DLL

  Alt 28. Sep 2010, 12:07
Klar hab ich das gesehen. Ist ja quasi auch der einzig sinnvolle Result einer Googlesuche und ich beschäftige mich schon so einige Stunden mit dem Problem.

Aber mit dem Wissen, dass ich mir die letzten 2 Tage in denen ich mich mit diesem Problem beschäftigt hab angeeignet hab, ließt sich der doch ein wenig anders als beim ersten mal.

Delphi-Quellcode:
function MCardGetAttrib(
    hMCard:THandle;
    dwAttrId: DWord;
    pbAttr: AnsiString;
    var pcbAttrLen: Integer
  ):Integer; stdcall; external 'MCSCM.DLL';
Dies führt in der Tat zum gewünschten Ergebnis *staun*. Es ist, wenn man so will, die Eins-zu-Eins Übersetzung der VB-Codes aus meinem ersten Post. Mir ist nicht ganz klar warum in pbAttr (obwohl nicht als var übergeben und kein pointer) tatsächlich das ergebnis enthält. Ich kann nur vermuten, dass der Autor sich zu Nutze gemacht hat, dass ein AnsiString intern ja schon ein Pointer ist. Wie zukunftssicher das ist kann ich nicht beurteilen.

Danke Omata für die "Rückkopplung", die mich letztlich zum Ziel führte. War wohl der klassische Fall von "Brett vorm Kopf".

Toni
Der frühe Vogel fängt den Wurm, richtig.
Aber wird nicht auch der frühe Wurm vom Vogel gefressen?
  Mit Zitat antworten Zitat