- Lade alles statisch.
- Lade doch alle Adressen gleich zu Beginn und springe danach direkt hin, ohne den Wrapper.
oder
- Lade überall erstmal Laderoutinen rein und tausche diese, beim ersten Aufruf, aus.
Delphi-Quellcode:
interface
var
SQLite3_Open:
function(filename: PAnsiChar;
var db: TSQLiteDB): integer;
cdecl;
implementation
function _SQLite3_Open(filename: PAnsiChar;
var db: TSQLiteDB): integer;
cdecl;
begin
LoadProcAddress(SQLite3_Open, '
sqlite3_open');
Result := SQLite3_Open(filename,
db);
end;
initialization
SQLite3_Open := _SQLite3_Open;
Ich weiß jetzt nicht, wie das mit Konstanten in Mac oder 64 Bit aussieht, aber früher hätte ich eventuell eine typisierte Konstante mißhandelt, anstatt der globalen Variable (da diese grungsätzlich erstmal schreibgeschützt ist, was sich aber verbiegen läßt)