Einzelnen Beitrag anzeigen

Benutzerbild von edosoft
edosoft

Registriert seit: 27. Okt 2003
Ort: Wehingen
258 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: VB-Funktionen in Delphi übersetzen

  Alt 4. Feb 2006, 19:02
hi,

vielen dank. das mit dem byte und cardinal ist mir auch aufgefallen
ich hab jetzt noch die variablen der funktion alle "normal" deklariert, d.h. ohne prefix. dann hab ich noch pCardParameters durch @CardParameters ersetzt.
jetzt funktionierts - wenn auch merkwürdig. wenn ich z.b. hinschreibe
Delphi-Quellcode:
rc := SCardI2CInit(hCard, @CardParameters, lType);
If rc <> 0 Then
  begin
    edit1.Text := ('error');
    exit;
    end;
dann bricht er jedes mal ab.

wenn ich aber schreib
Delphi-Quellcode:
rc := SCardI2CInit(hCard, @CardParameters, lType);
inttostr(rc);
If rc <> 0 Then
  begin
    edit1.Text := ('error');
    exit;
    end;
funktionierts (fast) immer. wenn ich bei der funktion anstatt stdcall "safecall" angeb dann sagt er bei der ersten variante dasses ein safecall fehler gab und bei der version unten gibts kein fehler.

ich hab jetzt mal noch eine combobox eingefügt und wie beim vb beispiel noch so viele if..then sachen davpr gemacht wo er dem lType den wert zuweist. jetzt funktionierts immer. dennoch ärgerlich dass ich nicht weis worans liegt.


ps: ich habs "alte" vb drauf glaub. also halt visual studio 6.
Zitat:
[..]und ein long [ist] 32-bitig und damit ein Integer
hm aber ein integer ist doch signiert? und ein long doch nicht oder? (cardinal ist ja auch unsigniert)
Dominik Weber
www.edo-soft.com
  Mit Zitat antworten Zitat