Zum Hauptinhalt springen

C16_BinDirRead

C16_BinDirRead(const vPHANDLE aInstHdl, const vPHANDLE aDirHdl, const vCHAR* aName, vFLAGS aFlags, vC16_BinObj* aBinData) : vERROR

Binäres Verzeichnis lesen

Details

  • aInstHdl: Instanz-Handle
  • aDirHdl: Deskriptor des Ausgangsverzeichnisses
  • aName: Referenzeintrag
  • aFlags:
    • Optionen:
    • 0
    • _BinFirst
    • _BinLast
    • _BinNext
    • _BinPrev
    • _BinDirectory
  • aBinData: Daten des gelesenen binären Objektes / Verzeichnisses
  • Resultat: vERROR Fehlerwert
  • Siehe: Befehle der Programmierschnittstelle , C16_BinOpen()

Mit dieser Funktion wird ein Verzeichnis von binären Objekten geöffnet oder neu angelegt.

Im Parameter (aInstHdl) wird der von C16_InitInstance() bereitgestellte Instanz-Handle, der an die Funktion C16_OpenArea() zum Öffnen der Datenbank verwendet wurde, übergeben.

In (aDirHdl) wird der Deskriptor des Ausgangsverzeichnisses angegeben. Das Ausgangsverzeichnis (aDirHdl) muss mit C16_BinOpen(..., _BinDirectory) geöffnet worden sein.

info

Sofern das Ausgangsverzeichnis dem Wurzelverzeichnis entspricht, wird in (aDirHdl) 0 angegeben. Das Wurzelverzeichnis ist immer vorhanden und braucht auch nicht geöffnet zu werden.

Das Lesen der Verzeichniseinträge kann über folgende Optionen (aFlags) erfolgen:

  • 0 Der Verzeichniseintrag mit dem in (aName) angegebenem Namen wird gelesen. Ist kein Verzeichniseintrag mit dem Namen vorhanden, wird der Eintrag mit dem nächst höheren Namen gelesen. Ist kein nächst höherer vorhanden, wird _rNoRec zurückgegeben.
  • _BinFirst Der erste Verzeichniseintrag wird gelesen.
  • _BinLast Der letzte Verzeichniseintrag wird gelesen.
  • _BinNext Der Verzeichniseintrag nach dem Referenzeintrag (aName) wird gelesen.
  • _BinPrev Der Verzeichniseintrag vor dem Referenzeintrag (aName) wird gelesen.
  • _BinDirectory Die Unterverzeichnisse werden gelesen.

Konnte kein Eintrag gelesen werden (zum Beispiel, weil bei _BinNext kein Folgeeintrag existiert), wird als Ergebnis _rNoRec zurückgegeben.

Falls (aBinData) nicht NULL ist, werden verschiedene Informationen zu dem binären Objekt bzw. Verzeichnis in einer Struktur zurückgegeben. Die Struktur ist folgendermaßen definiert:

typedef struct
{
vXLONG ID;
vXLONG StorageID;
vCHAR Name[64];
vCHAR FullName[512];
vCHAR Custom[256];

vXLONG Created;
vXLONG Modified;
vXLONG TimeExternal;

vCHAR CreatedUser[24];
vCHAR ModifiedUser[24];
vCHAR TypeUser[64];
vCHAR TypeMIME[64];

vXLONG SizeDba;
vXLONG SizeOrg;
vBYTE Compression;
}
vC16_BinObj;
  • Komponente: Beschreibung
  • ID: Identität des Objektes / Verzeichnisses
  • StorageID: Storage-ID (nur bei binären Objekten)
  • Name: Name des Objektes / Verzeichnisses
  • FullName: Pfad und Name des Objektes / Verzeichnisses (nur verfügbar nach C16_BinInfo() mit aQueryPath = TRUE )
  • Custom: Benutzerdefinierte Eigenschaft
  • Created: Erstellungszeitpunkt des Objektes
  • Modified: Zeitpunkt der letzten Änderung
  • TimeExternal: Datum und Uhrzeit der letzten Änderung der externen Datei vor Import
  • CreatedUser: Benutzer, der das Objekt erzeugt hat
  • ModifiedUser: Benutzer, der das Objekt zuletzt geändert hat
  • TypeUser: Benutzerdefinierte Typinformation
  • TypeMIME: MIME-Typ des Objektes
  • SizeDba: Speicherverbrauch des Objektes in der Datenbank
  • SizeOrg: Originalgröße des Objektes
  • Compression: Kompressionsstufe

Der Rückgabewert vom Typ vERROR beinhaltet entweder 0 (kein Fehler), einen negativen Fehlerwert (siehe Fehlerwerte ) oder einen der folgenden positiven Fehlerwerte:

  • _rNoRec: Das Verzeichnis existiert nicht. Kein weiteres Verzeichnis vorhanden.