Forum: Win32/Win64 API (native code)
Delphi
by Nersgatt,
4. Jun 2009
Hihi, das fragst Du gerade in der Minute, wo ich das Notebook runtergefahren und verpackt habe :mrgreen:
Ich werde nächste Woche nochmals schauen, ist auf jeden Fall ein guter Hinweis.
Forum: Win32/Win64 API (native code)
Delphi
by Nersgatt,
4. Jun 2009
Auch das bringt leider keine Änderung. Ich habe andere Funktionen, wo z.B. unsignt int * value deklariert ist. Diese habe ich mit var value : LongWord übersetzt. Die funktionieren Wunderbar...
Forum: Win32/Win64 API (native code)
Delphi
by Nersgatt,
4. Jun 2009
Auch dann habe ich die selbe Fehlermeldung.
Forum: Win32/Win64 API (native code)
Delphi
by Nersgatt,
4. Jun 2009
Leider nein, aber das ist ja auch im Prinzip das selbe, wie meine erste Version.
Aufruf von res := SearchReader(port, version, xtype); wobei version und xtype als PChar deklariert sind. Bei Dir wird nur nachher aus dem PChar ein String gemacht. Die Zugriffsverletzung tritt ja schon beim Aufruf von SearchReader auf.
Forum: Win32/Win64 API (native code)
Delphi
by Nersgatt,
4. Jun 2009
Das geht leider nicht:
unitfrmMain.pas(33): E2197 Konstantenobjekt kann nicht als Var-Parameter weitergegeben werden
Version und Type sind ja Rückgabewerte der Funktion. Daher auch als VAR deklariert.
Forum: Win32/Win64 API (native code)
Delphi
by Nersgatt,
4. Jun 2009
Hm, Bahnhof...? :oops:
Ich habe doch im Aufruf Version und Type als lokale Variablen deklariert. Das ist vermutlich nicht das, was Du meinst, oder?
Forum: Win32/Win64 API (native code)
Delphi
by Nersgatt,
4. Jun 2009
Hallo,
ich habe etwas Probleme, eine Header-Datei von C nach Delphi 2006 zu übersetzen.
Ich habe folgende Deklaration:
DLL_EXPORT signed int FAR PASCAL searchReader(int* port, unsigned char* version, unsigned char* type);
Diese habe ich so übersetzt:
Function searchReader(var port : Integer;
var version : PChar;
var &type : PChar) :...