InternetOpenA 함수(wininet.h)

애플리케이션의 WinINet 함수 사용을 초기화합니다.

구문

HINTERNET InternetOpenA(
  [in] LPCSTR lpszAgent,
  [in] DWORD  dwAccessType,
  [in] LPCSTR lpszProxy,
  [in] LPCSTR lpszProxyBypass,
  [in] DWORD  dwFlags
);

매개 변수

[in] lpszAgent

WinINet 함수를 호출하는 애플리케이션 또는 엔터티의 이름을 지정하는 null로 끝나는 문자열에 대한 포인터입니다. 이 이름은 HTTP 프로토콜에서 사용자 에이전트로 사용됩니다.

[in] dwAccessType

필요한 액세스 유형입니다. 이 매개 변수는 다음 값 중 하나일 수 있습니다.

의미
INTERNET_OPEN_TYPE_DIRECT
모든 호스트 이름을 로컬로 확인합니다.
INTERNET_OPEN_TYPE_PRECONFIG
레지스트리에서 프록시 또는 직접 구성을 검색합니다.
INTERNET_OPEN_TYPE_PRECONFIG_WITH_NO_AUTOPROXY
레지스트리에서 프록시 또는 직접 구성을 검색하고 시작 Microsoft JScript 또는 INS(인터넷 설정) 파일의 사용을 방지합니다.
INTERNET_OPEN_TYPE_PROXY
프록시 바이패스 목록을 제공하고 확인할 이름이 프록시를 무시하지 않는 한 프록시에 요청을 전달합니다. 이 경우 함수는 INTERNET_OPEN_TYPE_DIRECT 사용합니다.

[in] lpszProxy

dwAccessTypeINTERNET_OPEN_TYPE_PROXY 설정하여 프록시 액세스를 지정할 때 사용할 프록시 서버의 이름을 지정하는 null로 끝나는 문자열에 대한 포인터입니다. InternetOpen에서 프록시 이름으로 사용하므로 빈 문자열을 사용하지 마세요. WinINet 함수는 CERN 형식 프록시(HTTP에만 해당) 및 TIS FTP 게이트웨이(FTP만 해당)만 인식합니다. Microsoft 인터넷 Explorer 설치된 경우 이러한 함수는 SOCKS 프록시도 지원합니다. FTP 요청은 HTTP 요청으로 변경하거나 InternetOpenUrl을 사용하여 CERN 형식 프록시를 통해 수행할 수 있습니다. dwAccessTypeINTERNET_OPEN_TYPE_PROXY 설정되지 않은 경우 이 매개 변수는 무시되며 NULL이어야 합니다. 프록시 서버를 나열하는 방법에 대한 자세한 내용은 인터넷 기능 사용프록시 서버 나열 섹션을 참조하세요.

[in] lpszProxyBypass

dwAccessTypeINTERNET_OPEN_TYPE_PROXY 설정된 경우 프록시를 통해 라우팅되지 않아야 하는 호스트 이름 또는 IP 주소의 선택적 목록을 지정하는 null로 종료된 문자열에 대한 포인터입니다. 목록에 와일드카드가 포함될 수 있습니다. InternetOpen은 이 문자열을 프록시 바이패스 목록으로 사용하므로 빈 문자열을 사용하지 마세요. 이 매개 변수가 "<local>" 매크로를 지정하는 경우 함수는 마침표가 포함되지 않은 호스트 이름에 대한 프록시를 무시합니다.

기본적으로 WinINet은 호스트 이름 "localhost", "loopback", "127.0.0.1" 또는 "[::1]"을 사용하는 요청에 대해 프록시를 바이패스합니다. 이 동작은 원격 프록시 서버가 일반적으로 이러한 주소를 제대로 resolve 않기 때문에 존재합니다.인터넷 Explorer 9: "<루프백>" 매크로를 사용하여 프록시 바이패스 목록에서 로컬 컴퓨터를 제거할 수 있습니다.

dwAccessTypeINTERNET_OPEN_TYPE_PROXY 설정되지 않은 경우 이 매개 변수는 무시되며 NULL이어야 합니다.

[in] dwFlags

옵션입니다. 이 매개 변수는 다음 값의 조합일 수 있습니다.

의미
INTERNET_FLAG_ASYNC
이 함수에서 반환된 핸들에서 내림차순 핸들에 대한 비동기 요청만 수행합니다.
INTERNET_FLAG_FROM_CACHE
네트워크 요청을 수행하지 않습니다. 모든 엔터티는 캐시에서 반환됩니다. 요청된 항목이 캐시에 없으면 ERROR_FILE_NOT_FOUND 같은 적절한 오류가 반환됩니다.
INTERNET_FLAG_OFFLINE
INTERNET_FLAG_FROM_CACHE 동일합니다. 네트워크 요청을 수행하지 않습니다. 모든 엔터티는 캐시에서 반환됩니다. 요청된 항목이 캐시에 없으면 ERROR_FILE_NOT_FOUND 같은 적절한 오류가 반환됩니다.

반환 값

애플리케이션이 후속 WinINet 함수에 전달하는 유효한 핸들을 반환합니다. InternetOpen이 실패하면 NULL이 반환됩니다. 특정 오류 메시지를 검색하려면 GetLastError를 호출합니다.

설명

InternetOpen 은 애플리케이션에서 호출한 첫 번째 WinINet 함수입니다. 인터넷 DLL에 내부 데이터 구조를 초기화하고 애플리케이션의 향후 호출을 준비하도록 지시합니다. 애플리케이션이 인터넷 함수 사용을 마치면 InternetCloseHandle 을 호출하여 핸들 및 연결된 리소스를 해제해야 합니다.

애플리케이션은 InternetOpen을 여러 번 호출할 수 있지만 일반적으로 한 번의 호출만으로도 충분합니다. 애플리케이션은 각각에 대해 구성된 서로 다른 프록시 서버와 같이 각 InternetOpen instance 대해 별도의 동작을 정의해야 할 수 있습니다.

InternetOpen에서 반환된 HINTERNET 핸들을 사용하여 호출 애플리케이션을 완료한 후에는 InternetCloseHandle 함수를 사용하여 닫아야 합니다.

WinINet API의 다른 모든 측면과 마찬가지로 이 함수는 DllMain 내에서 또는 전역 개체의 생성자 및 소멸자에서 안전하게 호출할 수 없습니다.

참고 WinINet은 서버 구현을 지원하지 않습니다. 또한 서비스에서 사용하지 않아야 합니다. 서버 구현 또는 서비스의 경우 WinHTTP(Microsoft Windows HTTP 서비스)를 사용합니다.
 

참고

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

요구 사항

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

추가 정보

인터넷 기능 사용

WinINet 함수