FATS - Fast Access Tree System
Inhaltsverzeichnis
Programmierschnittstellen
Watcom C/C++ für OS/2 (32bit)

Watcom C/C++ für OS/2 (32bit)


 
OS/2 Bibliotheken FATS_O32.DLL bzw. FATSXO32.DLL

Im Lieferumfang der FATS-Version für OS/2 (32bit) befinden sich die Dynamischen Bibliotheken FATS_O32.DLL (Basisversion) bzw. FATSXO32.DLL (Erweiterte Version), die Sie in das Systemverzeichnis von OS/2 kopieren müssen:

COPY FATS?O32.DLL \OS2\DLL

Die Bibliotheken exportieren folgende Funktionen:

void * __syscall FATSLibInit(unsigned int uDatasize, unsigned int uSign);

void * __syscall FATSLibExit(void * lpFatsdata);

unsigned long __syscall FATSLibCall(char *szCmnd, int *nErrorcode,char *szFatsKey, void * lpFatsdata);

Auf der Diskette finden Sie im Verzeichnis OS2_32I die Importbibliotheken FATS_O32.LIB (Basisversion) bzw. FATSXO32.LIB (Erweiterte Version), die Sie zu Ihren Programmen linken können.Diese Bibliotheken wurden speziell für Watcom C entwickelt und liegen im Intel-Objektformat vor.

Bevor Sie die FATS-Befehle aus Ihrem Watcom-C Programm verwenden können, müssen Sie FATS einen Datenbereich zuweisen:

lpFatsdata = FATSLibInit(0, 2);

Der erste Parameter bestimmt die Größe des FATS-Datenbereichs. Wenn Sie hier eine Null angeben, dann wird der minimal benötigte Speicherplatz reserviert (ca. 18-20 KB). Der zweite Parameter bestimmt die eingesetzte Programmiersprache, für C Programme muß dieser Wert gleich 2 sein. Die Adresse des Datenbereichs wird in der Variable lpFatsdata zurückgegeben.

Vor dem Beenden des Anwendungsprogrammes sollten Sie den mit der Funktion FATSLibInit reservierten Speicherbereich wieder freigeben. Dafür steht die Funktion FATSLibExit zur Verfügung:

lpFatsdata = FATSLibExit(lpFatsdata);

Obwohl der Speicherbereich notfalls auch vom Betriebssystem automatisch freigegeben würde, ist dieser Befehl nützlich, da er sämtliche noch geöffneten FATS-Dateien ordnungsgemäß schließt.

 
Aufruf von FATS

FATS-Befehle werden mit der Funktion FATSLibCall ausgeführt:

dwRecno = FATSLibCall(szCmnd, &nErrorcode, szFatsKey, lpFatsdata);

Bedeutung der verwendeten Parameter:

szCmndBefehlsstring
nErrorcodeFehlercode von FATS
szFatsKeySchlüsselstring von FATS
lpFatsdataAdresse des FATS-Datenbereichs
Rückgabe:Datensatznummer

 
Testprogramme

Auf der FATS-Diskette für OS/2 (32bit) befinden sich im Verzeichnis OS2_32I\C\WATCOM Testprogramme, anhand derer Sie die Verwendung von FATS studieren können:

 tst1_ger.cTestprogramm für Watcom-C für OS/2
 rebldger.cWiederherstellung einer Indexdatei ('BK', 'DL')

Bei der erweiterten Version von FATS befinden sich zusätzlich die folgenden Testprogramme im Verzeichnis:

 tst2_ger.cMatchcode-Suche im Kundenstamm
 mcsort.cAnwendung des Key-Flags beim Kommando 'MC'
 reindger.cSchnelle Re-Indizierung (Befehl 'XB')


 

© 2008  GCS Software, Udo Gertz