Freigeben über


FCICreate-Funktion (fci.h)

Die FCICreate-Funktion erstellt einen FCI-Kontext.

Syntax

HFCI DIAMONDAPI FCICreate(
  [in, out]      PERF              perf,
  [in]           PFNFCIFILEPLACED  pfnfcifp,
  [in]           PFNFCIALLOC       pfna,
  [in]           PFNFCIFREE        pfnf,
  [in]           PFNFCIOPEN        pfnopen,
  [in]           PFNFCIREAD        pfnread,
  [in]           PFNFCIWRITE       pfnwrite,
  [in]           PFNFCICLOSE       pfnclose,
  [in]           PFNFCISEEK        pfnseek,
  [in]           PFNFCIDELETE      pfndelete,
  [in]           PFNFCIGETTEMPFILE pfnfcigtf,
  [in]           PCCAB             pccab,
  [in, optional] void              *pv
);

Parameter

[in, out] perf

Zeiger auf eine ERF-Struktur , die die Fehlerinformationen empfängt.

[in] pfnfcifp

Zeiger auf eine anwendungsdefinierte Rückruffunktion, um zu benachrichtigen, wenn eine Datei in der Ablage platziert wird. Die Funktion sollte mithilfe des FNFCIFILEPLACED-Makros deklariert werden.

[in] pfna

Zeiger auf eine anwendungsdefinierte Rückruffunktion zum Zuweisen von Arbeitsspeicher. Die Funktion sollte mithilfe des FNFCIALLOC-Makros deklariert werden.

[in] pfnf

Zeiger auf eine anwendungsdefinierte Rückruffunktion, um zuvor zugewiesenen Arbeitsspeicher freizugeben. Die Funktion sollte mithilfe des FNFCIFREE-Makros deklariert werden.

[in] pfnopen

Zeiger auf eine anwendungsdefinierte Rückruffunktion zum Öffnen einer Datei. Die Funktion sollte mithilfe des FNFCIOPEN-Makros deklariert werden.

[in] pfnread

Zeiger auf eine anwendungsdefinierte Rückruffunktion zum Lesen von Daten aus einer Datei. Die Funktion sollte mithilfe des FNFCIREAD-Makros deklariert werden.

[in] pfnwrite

Zeiger auf eine anwendungsdefinierte Rückruffunktion zum Schreiben von Daten in eine Datei. Die Funktion sollte mithilfe des FNFCIWRITE-Makros deklariert werden.

[in] pfnclose

Zeiger auf eine anwendungsdefinierte Rückruffunktion zum Schließen einer Datei. Die Funktion sollte mithilfe des FNFCICLOSE-Makros deklariert werden.

[in] pfnseek

Zeiger auf eine anwendungsdefinierte Rückruffunktion, um einen Dateizeiger an den bestimmten Speicherort zu verschieben. Die Funktion sollte mithilfe des FNFCISEEK-Makros deklariert werden.

[in] pfndelete

Zeiger auf eine anwendungsdefinierte Rückruffunktion zum Löschen einer Datei. Die Funktion sollte mithilfe des FNFCIDELETE-Makros deklariert werden.

[in] pfnfcigtf

Zeiger auf eine anwendungsdefinierte Rückruffunktion zum Abrufen eines temporären Dateinamens. Die Funktion sollte mithilfe des FNFCIGETTEMPFILE-Makros deklariert werden.

[in] pccab

Zeiger auf eine CCAB-Struktur , die die Parameter zum Erstellen einer Ablage enthält.

[in, optional] pv

Zeiger auf einen anwendungsdefinierten Wert, der an Rückruffunktionen übergeben wird.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird ein HFCI-Kontextzeiger ungleich NULL zurückgegeben. andernfalls NULL.

Erweiterte Fehlerinformationen werden in der ERF-Struktur bereitgestellt.

Hinweise

FCI unterstützt mehrere gleichzeitige Kontexte. Daher ist es möglich, mehrere Cabinets gleichzeitig in derselben Anwendung zu erstellen oder zu extrahieren. Wenn die Anwendung multithreaded ist, ist es auch möglich, einen anderen Kontext in jedem Thread auszuführen. Eine Anwendung kann jedoch nicht denselben Kontext gleichzeitig in mehreren Threads verwenden. Beispielsweise kann FCIAddFile nicht aus zwei verschiedenen Threads mit demselben FCI-Kontext aufgerufen werden.

Anforderungen

   
Zielplattform Windows
Kopfzeile fci.h
Bibliothek Cabinet.lib
DLL Cabinet.dll

Weitere Informationen

FCIAddFile

FCIDestroy

FCIFlushFolder