模拟键盘发送文字(使用SendInput函数)
嗯...老生常谈的话题, 不过系统的总结了一下, 找了个相对简单的实现方式, 可以方便的发送任何文字
参考另一片文章: http://www.cnblogs.com/-clq/archive/2011/10/01/2197047.html
直接贴代码:

var
nInputs: array[0..1] of tagINPUT;
nData: WideChar;
nStr: WideString;
i: Integer;
begin
nStr := '测试内容123';
for I := 1 to Length(nStr) do
begin
nData := nStr[i];
with nInputs[0] do
begin
Itype := INPUT_KEYBOARD;
ki.wVk := 0;
ki.wScan := Word(nData);
ki.dwFlags := KEYEVENTF_UNICODE;
end;
SendInput(1, nInputs[0], SizeOf(nInputs[0]));
with nInputs[1] do
begin
Itype := INPUT_KEYBOARD;
ki.wVk := 0;
ki.wScan := Word(nData);
ki.dwFlags := KEYEVENTF_KEYUP or KEYEVENTF_UNICODE;
end;
SendInput(1, nInputs[1], SizeOf(nInputs[1]));
end;
end;

http://www.cnblogs.com/hs-kill/p/4761297.html
模拟键盘发送文字(使用SendInput函数)的更多相关文章
- 模拟键盘发送文字(使用SendInput API函数)
嗯...老生常谈的话题, 不过系统的总结了一下, 找了个相对简单的实现方式, 可以方便的发送任何文字 参考另一片文章: http://www.cnblogs.com/-clq/archive/2011 ...
- VB模拟键盘输入的N种方法
VB模拟键盘输入的N种方法http://bbs.csdn.net/topics/90509805hd378发表于: 2006-12-24 14:35:39用VB模拟键盘事件的N种方法 键盘是我们使用计 ...
- SendInput模拟键盘输入的问题
SendInput模拟键盘输入的问题 http://www.cnblogs.com/yedaoq/archive/2010/12/30/1922305.html 最近接触到这个函数,因此了解了一下, ...
- 模拟键盘输入首先要用到一个API函数:keybd_event
转自:http://www.cnblogs.com/cpcpc/archive/2011/02/22/2123055.html 模拟键盘输入首先要用到一个API函数:keybd_event. 模拟按键 ...
- C#窗体模拟键盘按键(组合键)产生事件 ---- 通过keybd_event()函数
如何模拟键盘按键触发产生的事件,比如模拟按下Alt + F4 关闭当前程序,Ctrl+Shift 切换输入法等 可以通过win32api 键盘事件 keybd_event() 来实现 1.定义键盘按键 ...
- C#窗体如何通过keybd_event()函数模拟键盘按键(组合键)产生事件
如何模拟键盘按键触发产生的事件,比如模拟按下Alt + F4 关闭当前程序,Ctrl+Shift 切换输入法等 可以通过win32api 键盘事件 keybd_event() 来实现 1.定义键盘按键 ...
- 不用winio直接用c#函数实现模拟键盘
原理来自: http://blog.sina.com.cn/s/blog_71921a8e0100olaw.html /// <summary> /// 导入模拟键盘的方法 /// &l ...
- C++模拟键盘消息
实现功能:在现有DLL程序中向特定的EXE窗口中发送模拟键盘的消息 使用API根据窗口标题递归查找特定的窗口句柄,之后模拟调用. 注意:keybd_event函数不能在VS下使用,所以用SendInp ...
- 使用C#模拟键盘输入、鼠标移动和点击、设置光标位置及控制应用程序的显示
1.模拟键盘输入(SendKeys) 功能:将一个或多个按键消息发送到活动窗口,就如同在键盘上进行输入一样. 语法:SendKeys.Send(string keys);SendKeys.SendWa ...
随机推荐
- UVa 10400 - Game Show Math 游戏中的数学 dfs+判重
题意:给出一些数字和一个目标数字,要求你在数字间添加+-*/,让表达式能达到目标数字,运算符号的优先级都是一样的. 由于数据量很大,本来想用map<string>判重的,结果还是超时了,然 ...
- GinWin命令控制台执行指令
- android 40 Io编程
Io编程:内存卡和sd卡.字符串存入内存卡然后读出来. activity: package com.sxt.day06_06; import java.io.FileInputStream; impo ...
- android 30 下拉列表框:ArrayAdapter和Spinner.
package com.sxt.day05_04; import android.os.Bundle; import android.app.Activity; import android.cont ...
- timestamp ---自动更新修改时间 与 记录首次插入时间
自动更新修改时间: mysql> create table z(a int ,b timestamp on update current_timestamp); mysql> insert ...
- 初步掌握MapReduce的架构及原理
目录 1.MapReduce定义 2.MapReduce来源 3.MapReduce特点 4.MapReduce实例 5.MapReduce编程模型 6.MapReduce 内部逻辑 7.MapRed ...
- Hadoop流程---从tpch到hive
刚接触Hadoop,看了一周的Hadoop及其相应的组件,感觉效果不是很明显,于是将找个例子练一下手,跑一个流程,加深对hadoop的理解. 设计的流程如下: TPC_H--->HdFS---- ...
- Log4J2基本配置
[1]. Log4J2入门: <1>. 导入Jar包: log4j-api-2.0-beta9.jar log4j-core-2.0-beta9.jar <2>. 编写代码: ...
- 2.添加键盘钩子。向进程中注入dll
学习笔记 1.首先要建立mfc的动态链接库.在def文件中放入要导出的函数名. 2.添加函数如下 //安装钩子 //HHOOK SetWindowsHookEx( // int idHook,//钩子 ...
- javascript权威指南第6版学习笔记
javascript权威指南第6版学习笔记 javascript数组.函数是特殊对象 看一点少一点. 3.1.4 hello.js内容是 var x=.3-.2;var y=.2-.1 console ...