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检查一个数是奇数还是偶数;偶数是能被2所整除的整数,若不是,那它就是奇数;奇数初以2的余数是1;
Python调用Windows API的一个简单例子 Python调用WINDOWS API的方法有多种,本文将使用Python 调用WINDOWS API来获取系统的版本信息。
Python实现插入排序(insertion sort) 插入排序(insertion sort)是一种比较简单的排序算法;其原理类似于对一手扑克牌进行排序;
Golang中的布尔(bool)类型 go语言中的布尔类型不能接受其他类型的赋值,不支持自动或强制的类型转换。
Windows10查看WiFi密码 要在Windows10上查看当前所使用的WiFi密码,只需要依次打开【控制面板】【网络和Internet】【查看网络状态和任务】【点击当前WiFi属性】【无线属性】【安全】,选中显示字符即可查看;
Linux终端重用上一条命令的参数 在Linux系统下,当你想使用上一条命令所用的参数,你可以通过这一条命令实现: