ZwQuerySymbolicLinkObject 함수(wdm.h)

ZwQuerySymbolicLinkObject 루틴은 기호 링크의 대상이 포함된 유니코드 문자열을 반환합니다.

구문

NTSYSAPI NTSTATUS ZwQuerySymbolicLinkObject(
  [in]            HANDLE          LinkHandle,
  [in, out]       PUNICODE_STRING LinkTarget,
  [out, optional] PULONG          ReturnedLength
);

매개 변수

[in] LinkHandle

쿼리하려는 기호 링크 개체에 대한 핸들입니다. 이 핸들은 ZwOpenSymbolicLinkObject를 성공적으로 호출하여 만듭니다.

[in, out] LinkTarget

기호 링크의 대상을 수신하는 초기화된 유니코드 문자열에 대한 포인터입니다.

[out, optional] ReturnedLength

에는 LinkTarget의 유니코드 문자열에 복사할 최대 바이트 수가 포함됩니다. 출력에서 부호 없는 long 정수에는 기호 링크의 대상 이름을 지정하는 유니코드 문자열의 길이가 포함됩니다.

반환 값

ZwQuerySymbolicLinkObject 는 STATUS_SUCCESS 반환하여 오류 없이 완료된 루틴을 나타내거나 LinkTarget 에 제공된 유니코드 문자열이 너무 작아서 반환된 문자열을 저장할 수 없는 경우 STATUS_BUFFER_TOO_SMALL.

설명

이 루틴을 호출하기 전에 드라이버 작성기는 LinkTarget 의 유니코드 문자열이 제대로 초기화되었고 문자열에 대한 버퍼가 할당되었는지 확인해야 합니다. ZwQuerySymbolicLinkObject를 호출하기 전에 유니코드 문자열의 MaximumLengthBuffer 멤버를 설정해야 합니다. 그렇지 않으면 호출이 실패합니다.

ZwQuerySymbolicLinkObject가 STATUS_BUFFER_TOO_SMALL 반환하는 경우 드라이버는 ReturnedLength에서 반환된 값을 검사해야 합니다. 이 변수에 반환된 숫자는 기호 링크의 대상에 대한 유니코드 문자열의 최대 길이를 나타냅니다.

이 함수에 대한 호출이 사용자 모드에서 발생하는 경우 "ZwQuerySymbolicLinkObject" 대신 "NtQuerySymbolicLinkObject" 이름을 사용해야 합니다.

커널 모드 드라이버에서 호출하는 경우 Windows 네이티브 시스템 서비스 루틴의 NtXxxZwXxx 버전은 입력 매개 변수를 처리하고 해석하는 방식으로 다르게 동작할 수 있습니다. 루틴의 NtXxx 버전과 ZwXxx 버전 간의 관계에 대한 자세한 내용은 네이티브 시스템 서비스 루틴의 Nt 및 Zw 버전 사용을 참조하세요.

요구 사항

요구 사항
대상 플랫폼 유니버설
헤더 wdm.h(Wdm.h, Ntddk.h, Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI 규정 준수 규칙 HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm)

추가 정보

네이티브 시스템 서비스 루틴의 Nt 및 Zw 버전 사용

ZwOpenSymbolicLinkObject