функция обратного вызова PMRX_CHKFCB_CALLDOWN (mrx.h)
Подпрограмма MRxAreFilesAliased вызывается RDBSS для запроса мини-перенаправления сети, чтобы определить, представляют ли две структуры FCB один и тот же файл.
Синтаксис
PMRX_CHKFCB_CALLDOWN PmrxChkfcbCalldown;
NTSTATUS PmrxChkfcbCalldown(
[in] IN PFCB Fcb1,
[in] IN PFCB Fcb2
)
{...}
Параметры
[in] Fcb1
Указатель на первую структуру FCB.
[in] Fcb2
Указатель на вторую структуру FCB.
Возвращаемое значение
MRxAreFilesAliased возвращает STATUS_SUCCESS, указывающие, что файлы не являются псевдонимами, или соответствующее значение NTSTATUS, например следующее:
Код возврата | Описание |
---|---|
STATUS_MORE_PROCESSING_REQUIRED | Элементы IndexNumber.QuadPart двух структур FCB идентичны. Это значение указывает, что два сравниваемых файла являются псевдонимами. |
Комментарии
RDBSS вызывает эту подпрограмму при обработке двух файлов, которые кажутся одинаковыми, но имеют разные имена (например, короткое имя MS-DOS и длинное имя).
MRxAreFilesAliased вызывается подпрограммой RxPurgeRelatedFobxs при очистке всех структур структуры FOBX, связанных со структурой NET_ROOT. В рамках этого процесса предпринимается попытка очистить все структуры FOBX, которые были закрыты до получения запроса на очистку. RDBSS необходимо очистить все временные структуры FOBX в следующих случаях:
Параметр PurgingFcb , передаваемый в подпрограмму RxPurgeRelatedFobxs , является структурой FCB, для которой должна происходить очистка. Если этот параметр является каталогом, RDBSS необходимо убедиться, что файлы, которые потенциально могут находиться в этом каталоге, закрыты.
Структура FCB, связанная со структурой FOBX в элементе FobxsToBeFinalized структуры RDBSS_SCAVENGER, не указывает на ту же структуру FCB, что и параметр PurgingFCB, передаваемый в RxPurgeRelatedFobxs. Это осложняется тем, что они могут быть не теми же структурами FCB, но фактически являются одинаковыми файлами из-за псевдонимов. В этом случае вызывается подпрограмма MRxAreFilesAliased , чтобы определить, является ли структура FCB псевдонимом.
MRxAreFilesAliased также вызывается подпрограммой RxScavengeFobxsForNetRoot при очистке всех файловых объектов, связанных со структурой NET_ROOT. Это осложняется тем, что параметр PurgingFCB , передаваемый в RxScavengeFobxsForNetRoot , и структура FCB, связанная со структурой NET_ROOT, может быть фактически одинаковым файлом из-за псевдонима. В этом случае вызывается подпрограмма MRxAreFilesAliased , чтобы определить, является ли структура FCB псевдонимом.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | mrx.h (включая Mrx.h) |