다음을 통해 공유


SHSetInstanceExplorer 함수(shlobj_core.h)

호스트된 셸 확장 및 기타 구성 요소가 호스트 프로세스가 조기에 닫히지 않도록 하는 인터페이스를 제공합니다. 호스트 프로세스는 일반적으로 Windows Explorer 또는 Windows 인터넷 Explorer 다른 애플리케이션에서도 사용할 수 있습니다.

구문

void SHSetInstanceExplorer(
  [in, optional] IUnknown *punk
);

매개 변수

[in, optional] punk

형식: IUnknown*

자유 스레드 IUnknown에 대한 포인터입니다. 구성 요소는 이 인터페이스( SHGetInstanceExplorer를 통해)를 사용하여 호스트 프로세스가 종료되지 않도록 할 수 있습니다. 이 값은 NULL일 수 있으며, 이 경우 프로세스 참조를 더 이상 구성 요소에서 사용할 수 없게 됩니다.

반환 값

없음

설명

Windows Explorer 및 인터넷 Explorer SHSetInstanceExplorer를 사용하여 셸 확장과 같은 구성 요소가 프로세스의 수명을 연장할 수 있도록 할 수 있습니다. 다른 애플리케이션은 SHSetInstanceExplorer 를 사용하여 동일한 기능을 허용할 수도 있습니다. instance 경우 브라우저 메시지 루프와 프록시 데스크톱은 SHSetInstanceExplorer를 사용하여 다른 스레드의 수명을 연장합니다.

이 함수를 호출하는 Windows Explorer 및 인터넷 Explorer 이외의 애플리케이션은 일부 구성 요소가 SHGetInstanceExplorer를 사용하여 Windows Explorer 또는 인터넷 Explorer 내에서 호스트되는지 여부를 감지하기 때문에 호환성 문제가 발생할 수 있습니다.

SHSetInstanceExplorer에 전달된 인터페이스 포인터는 자유 스레드 개체를 참조해야 합니다.

구성 요소가 SHGetInstanceExplorer를 호출할 때마다 시스템은 호출 구성 요소에 대한 인터페이스 포인터를 반환하기 전에 AddRef 메서드를 호출합니다. 그런 다음, 처리가 완료되면 구성 요소는 IUnknown::Release 메서드를 호출합니다. 제공된 인터페이스 포인터의 참조 수가 0이 아닌 동안 SHSetInstanceExplorer 를 호출하는 프로세스는 종료되지 않아야 합니다.

구성 요소가 프로세스 참조를 사용하는 방법에 대한 자세한 내용은 SHGetInstanceExplorer를 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 shlobj_core.h(Shlobj.h 포함)
라이브러리 Shell32.lib
DLL Shell32.dll(버전 5.0 이상)
API 세트 ext-ms-win-shell-shell32-l1-2-1(Windows 10 버전 10.0.10240에 도입됨)

추가 정보

SHGetInstanceExplorer