Einfacher gehts so: Mit brcc32 die Datei kompilieren, aber auf diese Weise
Quelltext
1:
| ACCESSDB RCDATA C:\DBRES.dbf |
oder so ähnlich, wichtig ist, dass du als Typ RCDATA nimmst.
dann ins Projekt einbinden
Quelltext
und die Funktion um die Datei zu extrahieren:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| function ExtRes(ResName,sZiel: string): Bool; var stmResource: TResourceStream; begin result:=true; try stmResource:=TResourceStream.Create(0,ResName,RT_RCDATA); try stmResource.SaveToFile(sZiel); except result:=false; end; stmResource.free; except result:=false; end; end; |
Und zur Laufzeit die Datei entpacken:
Quelltext
1:
| if ExtRes('ACCESSDB','C:\dtabase.dbf') then ShowMessage('Datei extrahiert.'); |
Eine Idee wäre die Datei zusätzlich mit
ZLib zu komprimieren und zur Laufzeit zu dekomprimieren. So würde man noch die EXE-Datei kleiner halten.