Einzelnen Beitrag anzeigen

Daniel G
(Gast)

n/a Beiträge
 
#4

Re: DLL werte übergabe

  Alt 27. Mai 2006, 19:41
stdcall; übergibt die Parameter einer Funktion von rechts nach links. Das ist z.B. für die System - DLL's notwendig. Das hat imho was mit C/C++ zu tun. Die Parameterübergabe einer Funktion in Delphi geht ja bekanntlich von links nach rechts, d.h. wenn du mit einem Pascal Programm eine Funktion aus einer C/C++ - DLL aufrufen willst, musst du die Funktion in deinem Programm mit einem "stdcall;" dahinter deklarieren, damit die Parameter der DLL in der richtigen Reihenfolge übergeben werden. Äääh.... Verständlich?

//Edit:
Oder um es kurz mit den Worten der OH zu sagen:
"Die Konventionen register und pascal übergeben Parameter von links nach rechts. Der links stehende Parameter wird also zuerst ausgewertet und übergeben, der rechts stehende Parameter zuletzt. Die Konventionen cdecl, stdcall und safecall übergeben die Parameter von rechts nach links."
  Mit Zitat antworten Zitat