다음을 통해 공유


RxFinalizeConnection 함수(rxprocs.h)

RxFinalizeConnection 공유에 대한 연결을 삭제합니다. 지정된 힘 수준에 따라 연결에서 열려 있는 모든 파일이 닫힙니다. 네트워크 미니 리다이렉터에서는 연결을 강제로 종료하도록 일부 옵션을 지정하지 않는 한 성능상의 이유로 전송 연결을 열어 두도록 선택할 수 있습니다.

통사론

NTSTATUS RxFinalizeConnection(
  IN OUT PNET_ROOT   NetRoot,
  IN OUT PV_NET_ROOT VNetRoot,
  IN LOGICAL         ForceFilesClosed
);

매개 변수

NetRoot

[in, out] 완료되는 NET_ROOT 구조체에 대한 포인터입니다.

VNetRoot

완료되는 V_NET_ROOT 구조체에 대한 포인터입니다.

ForceFilesClosed

RxFinalizeConnection 루틴의 동작을 제어하는 플래그입니다. 플래그는 다음 값 중 하나일 수 있습니다.

TRUE

RxFinalizeConnection 분리된 파일과 IRP_MN_NOTIFY_CHANGE_DIRECTORY 요청이 열려 있더라도 성공합니다. 이 옵션은 이러한 분리된 파일을 강제로 닫습니다.

FALSE

파일 또는 변경 알림이 열려 있으면 RxFinalizeConnection 실패합니다.

0xff

RxFinalizeConnection 연결 추가 요청으로 인해 V_NET_ROOT 구조에 대한 추가 참조를 제거하지만 그렇지 않으면 false 것처럼 작동합니다. 파일 또는 변경 알림이 열려 있으면 RxFinalizeConnection 실패합니다.

반환 값

RxFinalizeConnection 성공에 대한 STATUS_SUCCESS 반환하거나 실패에 대한 다음 오류 코드 중 하나를 반환합니다.

반환 코드 묘사
STATUS_CANCELLED
RX_CONTEXT 구조체의 Flags 멤버는 IRP가 취소되었음을 나타냅니다.
STATUS_CONNECTION_IN_USE
연결은 여전히 사용 중입니다.
STATUS_FILES_OPEN
파일이 열려 있으므로 원격 연결을 삭제해서는 안 됩니다.
STATUS_LOCK_NOT_GRANTED
연결된 잠금에 대한 배타적 잠금

발언

RxFinalizeConnection 일반적으로 사용자 모드에서 사용자 지정 IOCTL 요청을 수신하는 응답으로 네트워크 미니 리디렉션기 드라이버에 의해 호출됩니다. 예를 들어 사용자는 명령줄에서 "NET USE x: /d"를 실행하여 공유를 삭제할 수 있습니다. 이 요청은 네트워크 미니 리디렉션자가 제공하는 네트워크 공급자 DLL을 통해 네트워크 미니 리디렉션자 커널 드라이버로 전송된 사용자 지정 IOCTL 요청에 매핑됩니다. 이 요청은 RxFinalizeConnection 루틴을 호출하여 연결을 삭제합니다.

RxFinalizeConnection 지정된 V_NET_ROOT 구조에 대한 미해결 요청을 모두 취소합니다. 이러한 V_NET_ROOT 구조체는 해당 구조체에서 열리고 조작된 파일과 관계없이 만들어지고 삭제됩니다. 따라서 삭제 작업을 시도할 때 모든 미해결 요청이 취소되어야 합니다.

요구 사항

요구
대상 플랫폼 바탕 화면
헤더 rxprocs.h(Rxprocs.h 포함)
IRQL <= APC_LEVEL

참고 항목

RxCreateNetFcb

RxCreateNetFobx

RxCreateNetRoot

RxCreateSrvCall

RxCreateSrvOpen

RxCreateVNetRoot

RxDereference

RxFinalizeNetFcb

RxFinalizeNetFobx

RxFinalizeNetRoot

RxFinalizeSrvCall

RxFinalizeSrvOpen

RxFinalizeVNetRoot

RxFinishFcbInitialization

RxForceFinalizeAllVNetRoots

RxReference

RxSetSrvCallDomainName

RxpDereferenceNetFcb

RxpReferenceNetFcb

NET_ROOT 구조체

V_NET_ROOT 구조체