NdisMapFile 함수(ndis.h)

NdisMapFile 함수는 파일이 현재 매핑되지 않은 경우 이미 열려 있는 파일을 호출자가 액세스할 수 있는 버퍼에 매핑합니다.

구문

void NdisMapFile(
  [out] PNDIS_STATUS Status,
  [out] PVOID        *MappedBuffer,
  [in]  NDIS_HANDLE  FileHandle
);

매개 변수

[out] Status

이 함수가 매핑 작업의 상태 반환하는 호출자 제공 변수에 대한 포인터로, 다음 중 하나일 수 있습니다.

NDIS_STATUS_SUCCESS

호출자는 NdisUnmapFile 함수가 호출될 때까지 파일 내용에 대한 단독 액세스 권한을 가집니다.

NDIS_STATUS_ALREADY_MAPPED

호출자는 현재 파일 내용에 액세스할 수 없습니다.

[out] MappedBuffer

이 함수가 매핑된 파일 콘텐츠 또는 NULL의 기본 가상 주소를 반환하는 호출자 제공 변수에 대한 포인터입니다.

[in] FileHandle

NdisOpenFile 함수에 대한 이전 호출에서 반환된 핸들입니다.

반환 값

없음

설명

NdisMapFile 은 드라이버가 파일 내용에 액세스할 수 있도록 열린 파일과 가상 주소 범위를 연결(지도)합니다. NdisMapFile 을 사용하면 언제든지 특정 파일의 매핑을 하나만 처리할 수 있습니다. 따라서 NdisUnmapFile 또는 NdisCloseFile 함수가 호출될 때까지 성공적인 호출자에게 파일 데이터에 대한 단독 액세스 권한이 부여됩니다.

미니포트 드라이버는 NdisMapFile 및 NdisUnmapFile 에 대한 번갈아 호출을 사용하여 필요에 따라 이러한 열린 파일을 매핑하고 매핑 해제할 수 있습니다. NdisCloseFile을 호출하면 FileHandle이 해제되고 파일 내용이 포함된 버퍼의 할당이 취소됩니다.

미니포트 드라이버는 초기화 중에만 NdisMapFile 을 호출할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista에서 NDIS 6.0 및 NDIS 5.1 드라이버(NdisMapFile(NDIS 5.1 참조))에 대해 지원됩니다. Windows XP에서 NDIS 5.1 드라이버(NdisMapFile(NDIS 5.1 참조))에 대해 지원됩니다.
대상 플랫폼 유니버설
헤더 ndis.h(Video.h 포함)
라이브러리 Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI 규정 준수 규칙 Irql_Miscellaneous_Function(ndis)

추가 정보

MiniportInitializeEx

NdisCloseFile

NdisOpenFile

NdisUnmapFile