近期公司需要做一个比较冷门的项目,对于上位机开发者来说可能很常见,但是对不接触上位机开发方面的小白来说,还是比较棘手,一头雾水,今天花费了一天时间,把句柄、user32、窗口等定义了解了一下,并结合项目的实际需求,看看Win API提供了哪些需要的可用的方法。
句柄
百度AI中对句柄的解释,我觉得比较通俗易懂。
”“句柄是一种用于引用对象或资源的特殊数据类型。 句柄可以看作是一个指向对象或资源的标识符,而不是直接引用对象或资源本身。句柄机制在C#中用于管理资源、跟踪对象的生命周期以及实现对象之间的引用关系”
如果想要对句柄进行更深层次的了解,可以百度一下,网上大佬很多。
user32
User32.dll是C#中常用的DLL,用于各种与用户界面和窗口相关的操作。
- 窗口操作:User32.dll提供了操作窗口的函数,如创建、关闭、调整大小、移动和隐藏/显示窗口。
- 消息处理:User32.dll允许您处理发送到窗口的消息。
- 输入控制:User32.dll提供了处理键盘和鼠标输入的函数。
- 剪贴板操作:User32.dll使您能够处理剪贴板。
- 窗口枚举:User32.dll允许您枚举系统上所有打开的窗口。
user32常用方法
1.GetWindowText 获取给定窗口句柄的窗口标题
2.FindWindowEx函数在指定的父窗口下查找具有指定类名和窗口标题的窗口
3.FindWindow函数根据窗口的类名和窗口标题进行查找
4.IsWindowVisible函数用于确定指定窗口是否可见
5.GetWindowTextLength函数用于获取指定窗口标题文本的长度
6.SetForegroundWindow函数用于将指定窗口设置为前台窗口,并将其激活
7.EnumWindows函数用于枚举系统中所有顶级窗口的句柄
8.EnumChildWindows函数来获取指定窗口的所有子窗口句柄
9.EnumChildWindows函数用于枚举指定父窗口的所有子窗口
今天对这几个常用方法进行了探秘,但是窗口的控件还没有获取,无法控制应用程序,明天继续。



被折叠的 条评论
为什么被折叠?



