我設計了一個包含某些表單的項目。問題是它不能在寬屏幕上正確顯示。我搜索了一下,發現了它通過註冊表可以正確處理DPI = 96我想改變DPI在vb.net中(不要手動) 這裏是我使用的代碼:以編程方式通過註冊表更改dpi設置?
Dim dpi As Graphics = Me.CreateGraphics
If (dpi.DpiX <> 96 And dpi.DpiY <> 96) Then
Dim DPISetting As RegistryKey = My.Computer.Registry.CurrentUser.OpenSubKey("HKEY_CURRENT_USER\Control Panel\Desktop\WindowsMetrics", True)
DPISetting.SetValue("AppliedDPI", 96) '**
End If
,但我得到與**一致的nullRefrence異常。你調用的對象是空的。我很長時間以來一直在努力,但找不到問題所在。如果您有任何建議或解決方案,我會非常感激。
看來辱罵你的應用程序更改廣佔用戶DPI系統您的應用程序中的設計問題。 –