Moin Captnemo,
Zitat von
Captnemo:
Hab leider in mancher Hinsicht noch zuviele Defizite, die ich leider auch nicht mehr aufholen werde.
Wie kommst Du denn da drauf?
Das ist doch alles nur Übungssache.
Was übrigens noch wichtig ist:
Die Deklarationen der JEDIs und meine unterscheiden sich zum Teil. Bei den Funktionsdeklarationen der Jedis werden, wie bei Borland üblich, die Parameter in die die Funktion Werte reinschreibt meist als var deklariert, so dass man hier dann nicht die Adresse der Variablen übergeben muss, sondern "nur" den Variablennamen.
Ich habe es mir hingegen angewöhnt die Parameter grundsätzlich C-typisch zu deklarieren. Der Grund dafür ist auch leicht zu erklären:
Viele Beispiel Sourcen sind in C(++) geschrieben, so dass mir bei meiner Deklaration die Übersetzung nach Pascal leichter fällt.
Ausserdem hat, für meinen Geschmack, die Verwendung von var Parametern auch einen grossen Nachteil: Wenn die
Api-Funktion es zulässt, dass man einen Parameter nicht benutzt, und dies durch Übergabe von nil kenntlich macht, so kann man dies bei var Parametern nicht machen. Hier muss zwingend eine Variable übergeben werden. Ich finde das unübersichtlich, ausserdem muss ich dann, unnötiger Weise, Variablen deklarieren, die ich gar nicht brauche.
Beispiele für den dynamischen Import von Funktionen wirst Du hier in grösserer Zahl finden können.
LOADLIBRARY,
GetProcAddress
[EDIT]
Meiner Ansicht nach spricht nichts gegen zwei Programm Versionen für die unterschiedlichen Betriebssysteme
[/EDIT]