C#模拟键盘输入(一)
主要使用了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
}
aaarticlea/png;base64,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" alt="" />
相关链接:
C#模拟键盘输入(一)的更多相关文章
- 使用C#模拟键盘输入、鼠标移动和点击、设置光标位置及控制应用程序的显示
1.模拟键盘输入(SendKeys) 功能:将一个或多个按键消息发送到活动窗口,就如同在键盘上进行输入一样. 语法:SendKeys.Send(string keys);SendKeys.SendWa ...
- SendInput模拟键盘输入的问题
SendInput模拟键盘输入的问题 http://www.cnblogs.com/yedaoq/archive/2010/12/30/1922305.html 最近接触到这个函数,因此了解了一下, ...
- VB模拟键盘输入的N种方法
VB模拟键盘输入的N种方法http://bbs.csdn.net/topics/90509805hd378发表于: 2006-12-24 14:35:39用VB模拟键盘事件的N种方法 键盘是我们使用计 ...
- Python模拟键盘输入和鼠标操作
Python模拟键盘输入和鼠标操作 一.Python键盘输入模拟: import win32api import win32con win32api.keybd_event(17,0,0,0) #c ...
- 模拟键盘输入 : SendMessage, keybd_event, PostKeybdMessage
转自模拟键盘输入 : SendMessage, keybd_event, PostKeybdMessage 目的 最近项目要求在Windows CE下模拟键盘输入,上网搜索了一下,发现有3个API可以 ...
- 模拟键盘输入首先要用到一个API函数:keybd_event
转自:http://www.cnblogs.com/cpcpc/archive/2011/02/22/2123055.html 模拟键盘输入首先要用到一个API函数:keybd_event. 模拟按键 ...
- 微信小程序车牌号码模拟键盘输入
微信小程序车牌号码模拟键盘输入练习, 未经允许,禁止转载,抄袭,如需借鉴参考等,请附上该文章连接. 相关资料参考:https://blog.csdn.net/littlerboss/article/d ...
- 用Delphi模拟键盘输入
在Windows大行其道的今天,windows界面程序受到广大用户的欢迎.对这些程序的操作不外乎两种,键盘输入控制和鼠标输入控制.有时,对于繁杂的,或重复性的操作,我们能否通过编制程序来代替手工输入, ...
- 【转】C# winform 加载网页 模拟键盘输入自动接入访问网络
[转]C# winform 加载网页 模拟键盘输入自动接入访问网络 声明: 本文原创,首发于博客园 http://www.cnblogs.com/EasyInvoice/p/6070563.html ...
- C# keybd_event用法 模拟键盘输入
最近有业务需求,需要模拟键盘输入,所以了解了一下C#中keybd_event函数的用法.该函数能够产生WM_KEYUP或WM_KEYDOWN消息,即可以触发键盘事件. 函数引用如下: [DllImpo ...
随机推荐
- jquery插件:仿百度首页可展开收起的消息提示控件
消息提示插件大伙并不陌生了,无论是个系统还是网站,基本都要有消息系统.但我认为,一个好的提示插件应当具备很好的独立性,不与页面其他元素发生任何关系,其次是能对外提供丰富的接口,因为你生来就是被别人来调 ...
- 如何在CRM系统中集成ActiveReports最终报表设计器
有时候,将ActiveReports设计器集成到业务系统中,为用户提供一些自定义的数据表,用户不需要了解如何底层的逻辑关系和后台代码,只需要选择几张关联的数据表,我们会根据用户的选择生成可供用户直接使 ...
- Linux网络编程系列-套接口选项控制
获取和设置套接口选项的方法有: getsockopt/setsockopt fcntl ioctl getsockopt/setsockopt 这两个函数仅用于套接口(socket)的设置,另外两个函 ...
- Java-继承 共3题
一.实现一个名为Person的类和它的子类Employee,Employee有两个子类Faculty和Staff.具体要求如下: (1)Person类中的属性有:姓名name(String类型),地址 ...
- 浅谈敏捷组织中PMO的人物
所谓的"敏捷组织"其实并没有标准的形式,而且PMO(项目办理单位)并没有一个标准的人物界说.有一个十分遍及的误解,公司在挑选"灵敏"或许"瀑布&quo ...
- Java中static的理解
static表示"全局"或者"静态"的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念. 被static ...
- Atitit paip.对象方法的实现原理与本质.txt
Atitit paip.对象方法的实现原理与本质.txt 对象方法是如何实现的1 数组,对象,字典1 对象方法是如何实现的 这显然是一个对象方法调用.但对象方法是如何实现的呢?在静态语言中,因为有编译 ...
- vb6里面dim和set的区别
dim是作用于变量 声明变量并分配存储空间 set作用于对象 将对象引用赋给变量或属性 例子: dim A as collection set A=new collection 等效于 di ...
- salesforce 零基础学习(三十四)动态的Custom Label
custom label在项目中经常用到,常用在apex class或者VF里面用来显示help text或者error message.有的时候我们需要用到的信息是动态变化的,那样就需要动态来显示信 ...
- Python下划线与命名规范
Python下划线与命名规范 先看结论,节省只想知道答案你的宝贵时间: _xxx 不能用于from module import * 以单下划线开头的表示的是protected类型的变量.即保护类型只能 ...