博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#模拟键盘输入
阅读量:5260 次
发布时间:2019-06-14

本文共 1458 字,大约阅读时间需要 4 分钟。

  主要使用了Windows API 实现,你可以在你C盘下的system32文件夹中找到user32.dll,函数的说明在MSDN都有,只需要拿名字去搜一下就行

  根据窗口的类名和窗口名称获取窗口句柄,成功返回一个窗口的句柄,否则返回0:

[DllImport("User32.dll", EntryPoint = "FindWindow")]        private static extern IntPtr FindWindow(string lpClassName, string lpWindowName);

  在窗口列表中寻找与指定条件相符的第一个子窗口

[DllImport("user32.dll", EntryPoint = "FindWindowEx")]        static extern IntPtr FindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string lpClass, string lpszWindow);

  找到句柄后向窗口发送消息,SendMessage方法有很多的重载

[DllImport("user32.dll ", EntryPoint = "SendMessage")]        public static extern IntPtr SendMessage(IntPtr hWnd, int Msg, IntPtr wParam, string lParam);        [DllImport("user32.dll", EntryPoint = "SendMessage")]        public static extern IntPtr SendMessage(IntPtr hwnd, int wMsg, IntPtr wParam, IntPtr lParam);
const int WM_CHAR = 0x0102;        const int WM_SETTEXT = 0x000C;        const int VK_RETURN = 0x0d;        static void Main(string[] args)        {            IntPtr handle = FindWindow(null, "Hello.txt - 记事本");            handle = FindWindowEx(handle, IntPtr.Zero, "Edit", null);            if (handle == IntPtr.Zero)            {                Console.WriteLine("没有找到句柄");                return;            }            SendMessage(handle, WM_SETTEXT, IntPtr.Zero, "Hello word!");             SendMessage(handle, WM_CHAR, (IntPtr)VK_RETURN, IntPtr.Zero);//Enter         }

相关链接:

转载于:https://www.cnblogs.com/liunlls/p/user32_SendMessage.html

你可能感兴趣的文章
TFS增加dataserver
查看>>
kill新号专题
查看>>
新人报道
查看>>
UML学习-状态图
查看>>
第四届 Rescue The Princess
查看>>
网络操作系统第三章习题
查看>>
jquery datepicker 只显示年月
查看>>
MVC学习系列——Model验证扩展
查看>>
C# GC 垃圾回收机制
查看>>
Displaying SharePoint Lists or Libraries in other sites 显示其他站点的List
查看>>
iOS9新特性之泛型
查看>>
JavaScript定时器越走越快的问题
查看>>
11--Python 备份文件程序
查看>>
python的xml模块
查看>>
Java HashMap的工作原理(转载)
查看>>
2016 Multi-University Training Contest 1
查看>>
Alpha阶段展示报告
查看>>
leetCode 加一 问题记录
查看>>
[深入理解Java虚拟机]<自动内存管理>
查看>>
图片处理的一些函数
查看>>