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

작업을 제어합니다. 이 매개 변수는 다음 값 중 하나일 수 있습니다.

의미
ICU_DECODE
인코딩된 문자를 다시 일반 형식으로 변환합니다. 이는 사용자가 구성 요소를 복사하기 위해 URL_COMPONENTS 구조에서 버퍼를 제공하는 경우에만 사용할 수 있습니다.
ICU_ESCAPE
모든 이스케이프 시퀀스(%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은 서버 구현을 지원하지 않습니다. 또한 서비스에서 사용하면 안 됩니다. 서버 구현 또는 서비스의 경우 WinHTTP(Microsoft Windows HTTP 서비스)를 사용합니다.
 

참고

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

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 wininet.h
라이브러리 Wininet.lib
DLL Wininet.dll

추가 정보

FtpOpenFile

균일한 리소스 로케이터 처리

InternetCloseHandle

InternetFindNextFile

InternetSetStatusCallback

WinINet 함수