同步操作将从 wxd_tony1984/DevelopAssistant 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
using System;using System.Collections.Generic;using System.Drawing;using System.Linq;using System.Runtime.InteropServices;using System.Text;using System.Threading.Tasks;namespace ICSharpCode.WinFormsUI{public class PrimaryScreenHelper{#region Win32 API[DllImport("user32.dll")]static extern IntPtr GetDC(IntPtr ptr);[DllImport("gdi32.dll")]static extern int GetDeviceCaps(IntPtr hdc, // handle to DCint nIndex // index of capability);[DllImport("user32.dll", EntryPoint = "ReleaseDC")]static extern IntPtr ReleaseDC(IntPtr hWnd, IntPtr hDc);#endregion#region DeviceCaps常量const int HORZRES = 8;const int VERTRES = 10;const int LOGPIXELSX = 88;const int LOGPIXELSY = 90;const int DESKTOPVERTRES = 117;const int DESKTOPHORZRES = 118;#endregion#region 属性/// <summary>/// 获取屏幕分辨率当前物理大小/// </summary>public static Size WorkingArea{get{IntPtr hdc = GetDC(IntPtr.Zero);Size size = new Size();size.Width = GetDeviceCaps(hdc, HORZRES);size.Height = GetDeviceCaps(hdc, VERTRES);ReleaseDC(IntPtr.Zero, hdc);return size;}}/// <summary>/// 当前系统DPI_X 大小 一般为96/// </summary>public static int DpiX{get{IntPtr hdc = GetDC(IntPtr.Zero);int DpiX = GetDeviceCaps(hdc, LOGPIXELSX);ReleaseDC(IntPtr.Zero, hdc);return DpiX;}}/// <summary>/// 当前系统DPI_Y 大小 一般为96/// </summary>public static int DpiY{get{IntPtr hdc = GetDC(IntPtr.Zero);int DpiX = GetDeviceCaps(hdc, LOGPIXELSY);ReleaseDC(IntPtr.Zero, hdc);return DpiX;}}/// <summary>/// 获取真实设置的桌面分辨率大小/// </summary>public static Size DESKTOP{get{IntPtr hdc = GetDC(IntPtr.Zero);Size size = new Size();size.Width = GetDeviceCaps(hdc, DESKTOPHORZRES);size.Height = GetDeviceCaps(hdc, DESKTOPVERTRES);ReleaseDC(IntPtr.Zero, hdc);return size;}}/// <summary>/// 获取宽度缩放百分比/// </summary>public static float ScaleX{get{IntPtr hdc = GetDC(IntPtr.Zero);int t = GetDeviceCaps(hdc, DESKTOPHORZRES);int d = GetDeviceCaps(hdc, HORZRES);float ScaleX = (float)GetDeviceCaps(hdc, DESKTOPHORZRES) / (float)GetDeviceCaps(hdc, HORZRES);ReleaseDC(IntPtr.Zero, hdc);return ScaleX;}}/// <summary>/// 获取高度缩放百分比/// </summary>public static float ScaleY{get{IntPtr hdc = GetDC(IntPtr.Zero);float ScaleY = (float)(float)GetDeviceCaps(hdc, DESKTOPVERTRES) / (float)GetDeviceCaps(hdc, VERTRES);ReleaseDC(IntPtr.Zero, hdc);return ScaleY;}}#endregion}}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。