Fonction SetThreadDpiHostingBehavior (winuser.h)

Définit la DPI_HOSTING_BEHAVIOR du thread. Ce comportement permet aux fenêtres créées dans le thread d’héberger des fenêtres enfants avec une autre DPI_AWARENESS_CONTEXT.

Syntaxe

DPI_HOSTING_BEHAVIOR SetThreadDpiHostingBehavior(
  DPI_HOSTING_BEHAVIOR value
);

Paramètres

value

Nouvelle valeur DPI_HOSTING_BEHAVIOR pour le thread actif.

Valeur retournée

La DPI_HOSTING_BEHAVIOR précédente pour le thread. Si le comportement d’hébergement transmis n’est pas valide, le thread n’est pas mis à jour et la valeur de retour est DPI_HOSTING_BEHAVIOR_INVALID. Vous pouvez utiliser cette valeur pour restaurer l’ancien DPI_HOSTING_BEHAVIOR après l’avoir remplacé par une valeur prédéfinie.

Remarques

DPI_HOSTING_BEHAVIOR active un comportement d’hébergement de contenu mixte, qui permet aux fenêtres parentes créées dans le thread d’héberger des fenêtres enfants avec une valeur DPI_AWARENESS_CONTEXT différente. Cette propriété affecte uniquement les nouvelles fenêtres créées dans ce thread pendant que le comportement d’hébergement mixte est actif. Une fenêtre parente avec ce comportement d’hébergement peut héberger des fenêtres enfants avec des valeurs DPI_AWARENESS_CONTEXT différentes, que le comportement d’hébergement mixte des fenêtres enfants soit activé ou non.

Ce comportement d’hébergement ne permet pas aux fenêtres avec des valeurs de DPI_AWARENESS_CONTEXT par moniteur d’être hébergées jusqu’à ce que les fenêtres avec DPI_AWARENESS_CONTEXT valeurs système ou non.

Pour éviter des résultats inattendus, la DPI_HOSTING_BEHAVIOR d’un thread doit être modifiée pour prendre en charge les comportements d’hébergement mixtes uniquement lors de la création d’une nouvelle fenêtre qui doit prendre en charge ces comportements. Une fois cette fenêtre créée, le comportement d’hébergement doit revenir à sa valeur par défaut.

Cette API est utilisée pour modifier la DPI_HOSTING_BEHAVIOR du thread par rapport à sa valeur par défaut. Cela n’est nécessaire que si votre application doit héberger des fenêtres enfants à partir de plug-ins et de composants tiers qui ne prennent pas en charge le contexte prenant en charge chaque moniteur. Cela est plus susceptible de se produire si vous mettez à jour des applications complexes pour prendre en charge les comportements de DPI_AWARENESS_CONTEXT par moniteur.

L’activation du comportement d’hébergement mixte n’ajuste pas automatiquement la DPI_AWARENESS_CONTEXT du thread pour qu’elle soit compatible avec le contenu hérité. Le contexte de sensibilisation du thread doit toujours être modifié manuellement avant que de nouvelles fenêtres soient créées pour héberger ce contenu.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10, version 1803 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2016 (applications de bureau uniquement)
Plateforme cible Windows
En-tête winuser.h
Bibliothèque User32.lib
DLL User32.dll

Voir aussi

DPI_HOSTING_BEHAVIOR

GetThreadDpiHostingBehavior

GetWindowDpiHostingBehavior