SetThreadDpiHostingBehavior 함수(winuser.h)

스레드의 DPI_HOSTING_BEHAVIOR 설정합니다. 이 동작을 사용하면 스레드에서 만든 창이 다른 DPI_AWARENESS_CONTEXT 있는 자식 창을 호스트할 있습니다.

구문

DPI_HOSTING_BEHAVIOR SetThreadDpiHostingBehavior(
  DPI_HOSTING_BEHAVIOR value
);

매개 변수

value

현재 스레드의 새 DPI_HOSTING_BEHAVIOR 값입니다.

반환 값

스레드에 대한 이전 DPI_HOSTING_BEHAVIOR . 전달된 호스팅 동작이 유효하지 않으면 스레드가 업데이트되지 않고 반환 값이 DPI_HOSTING_BEHAVIOR_INVALID. 이 값을 사용하여 미리 정의된 값으로 재정의한 후 이전 DPI_HOSTING_BEHAVIOR 복원할 수 있습니다.

설명

DPI_HOSTING_BEHAVIOR 혼합 콘텐츠 호스팅 동작을 사용하도록 설정하여 스레드에서 만든 부모 창이 다른 DPI_AWARENESS_CONTEXT 값으로 자식 창을 호스트할 수 있도록 합니다. 이 속성은 혼합 호스팅 동작이 활성 상태인 동안 이 스레드 내에서 만든 새 창에만 영향을 줍니다. 이 호스팅 동작이 있는 부모 창은 자식 창에 혼합 호스팅 동작이 사용하도록 설정되어 있는지 여부에 관계없이 서로 다른 DPI_AWARENESS_CONTEXT 값으로 자식 창을 호스트할 수 있습니다.

이 호스팅 동작은 시스템 또는 인식할 수 없는 DPI_AWARENESS_CONTEXT 값이 있는 창까지 모니터별 DPI_AWARENESS_CONTEXT 값이 있는 창을 호스트할 수 없습니다.

예기치 않은 결과를 방지하려면 이러한 동작을 지원해야 하는 새 창을 만들 때만 혼합 호스팅 동작을 지원하도록 스레드의 DPI_HOSTING_BEHAVIOR 변경해야 합니다. 해당 창이 만들어지면 호스팅 동작을 기본값으로 다시 전환해야 합니다.

이 API는 스레드의 DPI_HOSTING_BEHAVIOR 기본값에서 변경하는 데 사용됩니다. 이는 앱이 모니터별 인식 컨텍스트를 지원하지 않는 플러그 인 및 타사 구성 요소에서 자식 창을 호스트해야 하는 경우에만 필요합니다. 이는 모니터별 DPI_AWARENESS_CONTEXT 동작을 지원하도록 복잡한 애플리케이션을 업데이트하는 경우에 발생할 가능성이 큽니다.

혼합 호스팅 동작을 사용하도록 설정해도 스레드의 DPI_AWARENESS_CONTEXT 레거시 콘텐츠와 호환되도록 자동으로 조정되지 않습니다. 이러한 콘텐츠를 호스트하기 위해 새 창을 만들기 전에 스레드의 인식 컨텍스트를 수동으로 변경해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 10 버전 1803 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2016 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 winuser.h
라이브러리 User32.lib
DLL User32.dll

추가 정보

DPI_HOSTING_BEHAVIOR

GetThreadDpiHostingBehavior

GetWindowDpiHostingBehavior