InternetCrackUrlA 함수(wininet.h)
URL을 구성 요소 부분으로 크래킹합니다.
구문
BOOL InternetCrackUrlA(
[in] LPCSTR lpszUrl,
[in] DWORD dwUrlLength,
[in] DWORD dwFlags,
[in, out] LPURL_COMPONENTSA lpUrlComponents
);
매개 변수
[in] lpszUrl
금이 간 정식 URL을 포함하는 문자열에 대한 포인터입니다.
[in] dwUrlLength
lpszUrl 문자열의 크기(TCHAR)이거나 lpszUrl이 ASCIIZ 문자열인 경우 0입니다.
[in] dwFlags
작업을 제어합니다. 이 매개 변수는 다음 값 중 하나일 수 있습니다.
값 | 의미 |
---|---|
|
인코딩된 문자를 다시 일반 형식으로 변환합니다. 이는 사용자가 구성 요소를 복사하기 위해 URL_COMPONENTS 구조에서 버퍼를 제공하는 경우에만 사용할 수 있습니다. |
|
모든 이스케이프 시퀀스(%xx)를 해당 문자로 변환합니다. 이는 사용자가 구성 요소를 복사하기 위해 URL_COMPONENTS 구조에서 버퍼를 제공하는 경우에만 사용할 수 있습니다. |
[in, out] lpUrlComponents
URL 구성 요소를 수신하는 URL_COMPONENTS 구조체에 대한 포인터입니다.
반환 값
함수가 성공하면 TRUE 를 반환하고, 그렇지 않으면 FALSE 를 반환합니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.
설명
필요한 구성 요소는 URL_COMPONENTS 구조체의 멤버로 표시됩니다. 각 구성 요소에는 값에 대한 포인터가 있으며 저장된 값의 길이를 저장하는 멤버가 있습니다. 구성 요소의 값과 길이가 모두 0이면 해당 구성 요소가 반환되지 않습니다. Windows Vista 이상: 구성 요소 값에 대한 포인터가 NULL 이고 해당 길이 멤버의 값이 0이 아니면 lpszUrl 문자열에 있는 해당 구성 요소의 첫 번째 문자 주소가 포인터에 저장되고 구성 요소의 길이가 길이 멤버에 저장됩니다.
포인터에 사용자가 제공한 버퍼의 주소가 포함된 경우 길이 멤버는 버퍼의 크기를 포함해야 합니다. InternetCrackUrl 은 구성 요소를 버퍼에 복사하고 길이 멤버는 복사된 구성 요소의 길이로 설정되고 후행 문자열 종결자에 대해 1을 뺀 값으로 설정됩니다.
InternetCrackUrl이 제대로 작동하려면 URL_COMPONENTS 구조체의 크기(바이트)를 dwStructSize 멤버에 저장해야 합니다.
참고lpUrlComponents가 가리키는 URL_COMPONENTS 구조체의 dwUrlPathLength 멤버에 반환된 값이 너무 커서 공백이 포함된 "file://" URL에는 InternetCrackUrl을 사용하지 마세요. 그러나 공백 문자가 포함된 "file://" URL이 있는 경우에만 해당됩니다.
WinINet API의 다른 모든 측면과 마찬가지로 이 함수는 DllMain 내에서 또는 전역 개체의 생성자 및 소멸자에서 안전하게 호출할 수 없습니다.
참고
wininet.h 헤더는 UNICODE 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 InternetCrackUrl을 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | wininet.h |
라이브러리 | Wininet.lib |
DLL | Wininet.dll |