다음을 통해 공유


UrlUnescapeA 함수(shlwapi.h)

이스케이프 시퀀스를 일반 문자로 다시 변환합니다.

구문

LWSTDAPI UrlUnescapeA(
  [in, out]           PSTR  pszUrl,
  [out, optional]     PSTR  pszUnescaped,
  [in, out, optional] DWORD *pcchUnescaped,
                      DWORD dwFlags
);

매개 변수

[in, out] pszUrl

형식: PTSTR

URL이 있는 null로 끝나는 문자열에 대한 포인터입니다. dwFlagsURL_UNESCAPE_INPLACE 설정된 경우 변환된 문자열은 이 매개 변수를 통해 반환됩니다.

[out, optional] pszUnescaped

형식: PTSTR

이스케이프되지 않은 버전의 pszURL을 포함하는 null로 끝나는 문자열을 수신하는 버퍼에 대한 포인터입니다. URL_UNESCAPE_INPLACEdwFlags에서 설정된 경우 이 매개 변수는 무시됩니다.

[in, out, optional] pcchUnescaped

형식: DWORD*

pszUnescaped가 가리키는 버퍼의 문자 수입니다. 항목에서 pcchUnescaped 가 가리키는 값은 버퍼의 크기로 설정됩니다. 함수가 성공 코드를 반환하고 URL_UNESCAPE_INPLACE 플래그가 설정되지 않은 경우 pcchUnescaped 가 가리키는 값은 종료 되는 NULL 문자를 계산하지 않고 해당 버퍼에 기록된 문자 수로 설정됩니다. E_POINTER 오류 코드가 반환되면 버퍼가 너무 작고 pcchUnescaped 지점 값이 버퍼에 포함할 수 있어야 하는 필수 문자 수로 설정됩니다. 다른 오류가 반환되면 pcchUnescaped 지점의 값이 정의되지 않습니다.

dwFlags

형식:DWORD

이스케이프되지 않은 문자를 제어하는 플래그입니다. 다음 플래그의 조합일 수 있습니다.

URL_DONT_UNESCAPE_EXTRA_INFO

# 또는 ?을 변환하지 마세요. 문자 또는 문자열에서 문자 뒤에 있는 모든 문자입니다.

URL_UNESCAPE_AS_UTF8

Windows 8 도입되었습니다. URL_ESCAPE_AS_UTF8 플래그를 사용하여 인코딩된 URL을 디코딩합니다.

URL_UNESCAPE_INPLACE

pszURL을 사용하여 pszUnescaped 대신 변환된 문자열을 반환합니다.

반환 값

형식: HRESULT

성공하면 S_OK 반환합니다. URL_UNESCAPE_INPLACE 플래그가 설정되지 않은 경우 pcchUnescaped가 가리키는 값은 pszUnescaped가 가리키는 출력 버퍼의 문자 수로 설정됩니다. URL_UNESCAPE_INPLACE 플래그가 설정되지 않고 출력 버퍼가 너무 작으면 E_POINTER 반환합니다. pcchUnescaped 매개 변수는 필요한 버퍼 크기로 설정됩니다. 그렇지 않으면 표준 오류 값을 반환합니다.

설명

이스케이프 시퀀스에는 "%xy" 형식이 있습니다.

입력 문자열은 INTERNET_MAX_URL_LENGTH 이상일 수 없습니다.

참고

shlwapi.h 헤더는 URLUnescape를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional, Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 shlwapi.h
라이브러리 Shlwapi.lib
DLL Shlwapi.dll(버전 5.0 이상)