La taille différente que vous avez vu provoquée par les valeurs par défaut de DPI (points par pouce) dans les deux systèmes d'exploitation. Windows XP et Vista définissent la valeur par défaut de DPI logique égale à 96 quelle que soit la taille de votre moniteur, mais à partir de Windows 7, la valeur par défaut de DPI calculée par Windows est automatiquement fonction de la taille de votre écran. Cela deviendra une longue explication si j'explique tout le concept DPI à cet endroit. Donc, vous êtes susceptible de voir l'arrière-plan est plus grand dans Windows 7, non? parce que la valeur de Windows 7 dpi a tendance à être plus grande que 96, il pourrait 120, 150, ou même 192 dpi. Windows 7 décidera automatiquement si cela dépend de la taille de votre écran. Ainsi, la meilleure solution à votre problème consiste à créer des images de fond différentes pour chaque valeur de ppp possible, puis utilisez GetDeviceCaps(..., LOGPIXELSX)
pour obtenir la valeur de ppp actuelle utilisée par Windows.