diff --git a/dlls/user32/sysparams.c b/dlls/user32/sysparams.c
index 82940e4b23c6bd7eab69fd2d545317cc768bfd83..0563271b0c0239bd6eaa46a5f3a8ecb00c721470 100644
--- a/dlls/user32/sysparams.c
+++ b/dlls/user32/sysparams.c
@@ -710,7 +710,11 @@ static inline HDC get_display_dc(void)
 {
     static const WCHAR DISPLAY[] = {'D','I','S','P','L','A','Y',0};
     static HDC display_dc;
-    if (!display_dc) display_dc = CreateICW( DISPLAY, NULL, NULL, NULL );
+    if (!display_dc)
+    {
+        display_dc = CreateICW( DISPLAY, NULL, NULL, NULL );
+        __wine_make_gdi_object_system( display_dc, TRUE );
+    }
     return display_dc;
 }