Freigeben über


PMRX_CHKFCB_CALLDOWN Rückruffunktion (mrx.h)

Die MRxAreFilesAliased Routine wird von RDBSS- aufgerufen, um den Netzwerk-Miniumleitungsmodul anzufordern, um festzustellen, ob zwei FCB-Strukturen dieselbe Datei darstellen.

Syntax

PMRX_CHKFCB_CALLDOWN PmrxChkfcbCalldown;

NTSTATUS PmrxChkfcbCalldown(
  [in] IN PFCB Fcb1,
  [in] IN PFCB Fcb2
)
{...}

Parameter

[in] Fcb1

Ein Zeiger auf die erste FCB-Struktur.

[in] Fcb2

Ein Zeiger auf die zweite FCB-Struktur.

Rückgabewert

MRxAreFilesAliased gibt STATUS_SUCCESS zurück, der angibt, dass die Dateien nicht aliasiert sind, oder einen geeigneten NTSTATUS-Wert, z. B. folgendes:

Rückgabecode Beschreibung
STATUS_MORE_PROCESSING_REQUIRED Die IndexNumber.QuadPart Mitglieder der beiden FCB-Strukturen sind identisch. Dieser Wert gibt an, dass die beiden zu vergleichenden Dateien Aliase sind.

Bemerkungen

RDBSS ruft diese Routine auf, wenn zwei Dateien verarbeitet werden, die identisch erscheinen, aber unterschiedliche Namen haben (z. B. einen MS-DOS Kurznamen und einen langen Namen).

MRxAreFilesAliased wird von der RxPurgeRelatedFobxs Routine aufgerufen, wenn alle Strukturen einer FOBX-Struktur gelöscht werden, die einer NET_ROOT Struktur zugeordnet ist. Im Rahmen dieses Prozesses wird versucht, alle FOBX-Strukturen zu bereinigen, die vor dem Empfang der Bereinigungsanforderung eine Schließung ausstehen. RDBSS muss alle temporären FOBX-Strukturen in den folgenden Fällen gerüsten:

  • Der PurgingFcb Parameter, der an die RxPurgeRelatedFobxs Routine übergeben wird, ist die FCB-Struktur, für die das Gerüst auftreten soll. Wenn dieser Parameter ein Verzeichnis ist, muss RDBSS sicherstellen, dass Dateien, die sich potenziell in diesem Verzeichnis befinden können, geschlossen werden.

  • Die FCB-Struktur, die der FOBX-Struktur auf der FobxsToBeFinalized Mitglied der RDBSS_SCAVENGER-Struktur zugeordnet ist, verweist nicht auf dieselbe FCB-Struktur wie der PurgingFCB Parameter, der an RxPurgeRelatedFobxsübergeben wird. Dies ist kompliziert durch die Tatsache, dass sie möglicherweise nicht die gleichen FCB-Strukturen sind, sondern tatsächlich die gleiche Datei aufgrund von Aliasing sind. In diesem Fall wird die MRxAreFilesAliased Routine aufgerufen, um festzustellen, ob die FCB-Struktur aliast ist.

MRxAreFilesAliased wird auch von der RxScavengeFobxsForNetRoot Routine aufgerufen, wenn alle Dateiobjekte gelöscht werden, die einer NET_ROOT Struktur zugeordnet sind. Dies ist kompliziert durch die Tatsache, dass der PurgingFCB Parameter an RxScavengeFobxsForNetRoot und die FCB-Struktur, die der NET_ROOT Struktur zugeordnet ist, aufgrund von Aliasing tatsächlich dieselbe Datei sein kann. In diesem Fall wird die MRxAreFilesAliased Routine aufgerufen, um festzustellen, ob die FCB-Struktur aliast ist.

Anforderungen

Anforderung Wert
Zielplattform- Desktop
Header- mrx.h (einschließlich Mrx.h)

Siehe auch

MRxCleanupFobx

MRxCloseSrvOpen

MRxCollapseOpen

MRxCreate

MRxDeallocateForFcb

MRxDeallocateForFobx

MRxExtendForCache-

MRxExtendForNonCache

MRxFlush-

MRxForceClosed

MRxIsLockRealizable

MRxShouldTryToCollapseThisOpen

MRxTruncate-

MRxZeroExtend-

RxFinalizeNetFCB-

RxPurgeRelatedFobxs

RxScavengeFobxsForNetRoot-