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를 호출하기 전에 유니코드 문자열의 MaximumLength 및 Buffer 멤버를 설정해야 합니다. 그렇지 않으면 호출이 실패합니다.
ZwQuerySymbolicLinkObject가 STATUS_BUFFER_TOO_SMALL 반환하는 경우 드라이버는 ReturnedLength에서 반환된 값을 검사해야 합니다. 이 변수에 반환된 숫자는 기호 링크의 대상에 대한 유니코드 문자열의 최대 길이를 나타냅니다.
이 함수에 대한 호출이 사용자 모드에서 발생하는 경우 "ZwQuerySymbolicLinkObject" 대신 "NtQuerySymbolicLinkObject" 이름을 사용해야 합니다.
커널 모드 드라이버에서 호출하는 경우 Windows 네이티브 시스템 서비스 루틴의 NtXxx 및 ZwXxx 버전은 입력 매개 변수를 처리하고 해석하는 방식으로 다르게 동작할 수 있습니다. 루틴의 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) |