Golang通过使用GetSystemMetrics获取系统的分辨率

GetSystemMetrics()是一个Windows函数,该函数只有一个参数,称之为索引,这个索引有75个标识符,通过设置不同的标识符就可以获取系统分辨率、窗体显示区域的宽度和高度、滚动条的宽度和高度。

本文将使用Go语言调用GetSystemMetrics()函数来获取系统的分辨率。

GetSystemMetrics()函数在User32.dll动态链接库中,其函数原型为:

int WINAPI GetSystemMetrics( __in intnIndex);

具体实现:

package main

import (
	"syscall"
	"fmt"
)

const (
	SM_CXSCREEN = uintptr(0)	// X Size of screen
	SM_CYSCREEN = uintptr(1) // Y Size of screen
)


func main(){
	
	w,_,_ := syscall.NewLazyDLL(`User32.dll`).NewProc(`GetSystemMetrics`).Call(SM_CXSCREEN)
	h,_,_ := syscall.NewLazyDLL(`User32.dll`).NewProc(`GetSystemMetrics`).Call(SM_CYSCREEN)

	fmt.Println(int(w),int(h))
}

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/1544.html

分类: 计算机技术
推荐阅读:
Python 实现哈希表 哈希表是一种数据结构,其中数据元素的地址或索引值是从哈希函数生成的。在Python中,Dictionary数据类型就是哈希表的实现。
Golang中结构体方法的定义和使用 本文将详细的描述在Go语言中如何定义方法,以及如何使用它;阅读本文可能需要一点Go语言基础以及结构体的知识;
Golang捕获Ctrl+C的系统信号并作出响应 通常,当操作系统要停止你的进程时,会向你的进程发送信号,如果你需要在进程结束前处理一些事务,那么你需要捕获这些信号;
解决控制台窗口主进程conhost.exe高CPU利用率的有效办法 在使用Windows操作系统时,您可能会遇到控制台窗口主进程conhost.exe的高CPU利用率问题。本文将介绍conhost.exe的作用以及可能导致其CPU利用率高的原因,并提供解决办法,帮助您解决这一问题,提升系统性能和稳定性。
PySide6 按钮(QPushButton) QPushButton 是 Qt 框架中表示可点击按钮部件的类。在 PySide6 中,你可以使用 QPushButton 类来创建和与图形用户界面(GUI)应用程序中的按钮交互。
Python frozenset()类 在Python中,frozenset是一个内置的类,返回一个不可变的frozenset对象,表示一个无序的、唯一元素的集合;