Super, damit scheint's zu klappen.

... zumindest unter Windows.
Was ich bezüglich Linux und OSX jedoch noch nicht so ganz verstehe ist das hier:
Code: Alles auswählen
Import "kernel32.lib" ; Not in the kernel32.lib, but always linked
PB_2DDrawing_GlobalStructure.PB_2DDrawingInfo ; non-threaded
PB_2DDrawing_Globals ; threadedsafe mode
PB_Object_GetThreadMemory(*Globals)
EndImport
Bedeutet das nun, dass die Kernel32.lib benötigt wird oder doch nicht?
Denn falls sie benötigt wird, wäre es ja dann leider doch wieder nur eine reine Windows-Lösung.
Ich hab Dein Beispiel in dieser Form einfach mal unter Linux ausprobiert und bekomme natürlich einen Linker-Error, da er die Kernel32.lib unter Linux nicht finden kann.
So ganz hab ich den Kommentar "Not in the kernel32.lib, but always linked" nämlich nicht verstanden.
Den Kommentar könnte man ja u.U. so interpretieren dass die Kernel32.lib doch nicht benötigt würde - aber warum sollte man die linken, wenn das benötigte nicht drin ist?
Wie gesagt - so ganz schlau draus geworden bin ich nicht und wüsste jetzt nicht, wie ich and die entsprechenden Strukturen und das Interface (hab ich das so einigermaßen richtig erkannt auf was Du da zugreifst? ) unter Linux oder OSX rankommen sollte.
Oder gibt es u.U. für Linux und OSX ein Äquivalent zur Kernel32.lib, das ich dann per CompilerIF einfach entsprechend Importieren müsste?
Ohh je ... Fragen über Fragen ... und das auch noch soooo früh am Morgen.
