WinInet는 서비스 또는 IIS 애플리케이션에서 지원되지 않습니다.

경고

사용과 지원이 중단된 Internet Explorer 11 데스크톱 애플리케이션이 Microsoft Edge 업데이트를 통해 특정 버전의 Windows 10에서 영구적으로 비활성화될 예정입니다. 자세한 내용은 Internet Explorer 11 데스크톱 앱 지원 중단 FAQ를 참조하세요.

서비스 또는 IIS(인터넷 정보 서버) 애플리케이션(서비스)에서 실행되는 경우 Microsoft Win32 인터넷 함수(WinInet.dll에서 내보내기)는 지원되지 않습니다. 이 문서에서는 서비스 또는 IIS 애플리케이션에서 WinInet.dll 사용하는 방법에 대해 설명합니다.

원래 제품 버전: 인터넷 Explorer
원래 KB 번호: 238425

추가 정보

IIS는 서비스이므로 서비스에서 WinInet를 실행하는 것과 마찬가지로 ISAPI(인터넷 서버 애플리케이션 프로그램 인터페이스) 확장 또는 COM DLL--ASP(Active Server Pages)에서 사용하는 ActiveX DLL에서 WinInet를 실행하는 것과 동일한 문제 집합이 있습니다. IIS 애플리케이션에서 WinInet를 실행하려면 고유한 문제 집합도 있습니다.

서비스에서 WinInet를 실행하는 문제는 WinInet에서 SSL 정보, 프록시 정보 등에 레지스트리의 설정을 사용한다는 것입니다. 서비스는 레지스트리 하이브를 HKEY_CURRENT_USER 로드하지 않으므로 이 정보를 사용할 수 없습니다.

경고

Microsoft는 시스템 서비스의 컨텍스트 내에서 WinInet API 사용을 지원하지 않습니다.

WinInet API는 인터넷 Explorer 5.0이 설치된 SSL을 통해 서비스에서 사용되는 경우 액세스 위반을 보고합니다.

서버 환경에서 WinInet를 사용하는 고유한 제한 사항을 이해하려면 WinInet의 기록을 이해해야 합니다. WinInet는 인터넷 Explorer 사용하기 위해 개발되었습니다. 실제로 이후 버전의 WinInet를 사용하려면 인터넷 Explorer 최소 설치를 로드해야 합니다. 또한 WinInet는 인터넷(또는 인트라넷)에서 리소스에 액세스하려는 다른 클라이언트 애플리케이션에서 사용할 API를 노출합니다. DLL에 대한 적절한 사용을 이해하려면 WinInet가 개발되고 테스트된 환경을 인식하는 것이 중요합니다. WinInet는 클라이언트 환경에서 사용하기 위해 개발되었습니다. ISAPI DLL에서 실행 중일 때 클라이언트 역할을 계속하지만 이 경우 서버 환경에서 실행됩니다.

클라이언트 환경: 인터넷 Explorer 실행하는 사람

  • 상대적으로 낮은 요청 수
  • 비교적 연속적으로 요청
  • 호스트 애플리케이션 수명이 짧습니다(브라우저 세션 길이)

서버 환경: 웹 서버(예: https://www.microsoft.com)

  • 초당 요청 수가 높습니다.
  • 동시에 요청을 만드는 여러 스레드
  • 몇 주 또는 몇 달 동안 실행해야 합니다.

기본 설정 솔루션은 서비스 환경에서 실행되도록 설계된 WinHttp를 사용하는 것이며 서버 쪽 HTTP 스택이므로 클라이언트 쪽 HTTP 스택인 RFC 2616에 의해 적용되는 두 연결 제한에 바인딩되지 않습니다. 이 API 집합은 WinInet와 유사하므로 WinInet에 익숙한 사용자는 쉽게 적응할 수 있습니다.

또 다른 해결 방법은 플랫폼 SDK에 SSL을 통해 WinSock을 사용하는 방법을 보여 주는 샘플이 포함된 소켓을 직접 사용하는 것입니다. SDK의 폴더에 \Microsoft Platform SDK\Samples\Winbase\Security\Ssl 샘플이 있습니다.

서버 환경에서 WinInet를 사용할 때 알아야 할 또 다른 문제는 인터넷 Explorer 적용되는 두 개의 연결 제한입니다.

서비스 및 서버 환경에서 WinInet를 사용할 수 있지만 권장되지도 않고 Microsoft에서 지원되지도 않습니다. WinInet는 이 구성에서 테스트되지 않았으며 문제가 있습니다.