C#怎么模拟键盘在记事本里输入按键信息

fs83633 2016-09-15 11:14:50
小弟在网上找到这样的程序,但不知道怎么用,是调用键盘API的
static class KeyHook
{
[DllImport("user32.dll", EntryPoint = "keybd_event")]

public static extern void keybd_event(
byte bVk, //虚拟键值
byte bScan,// 一般为0
int dwFlags, //这里是整数类型 0 为按下,2为释放
int dwExtraInfo //这里是整数类型 一般情况下设成为0
);

#region 模拟按键
public static void Play()
{
keybd_event(179, 0, 0, 0);
keybd_event(179, 0, 2, 0);
}

public static void Stop()
{
keybd_event(178, 0, 0, 0);
keybd_event(178, 0, 2, 0);
}

public static void Last()
{
keybd_event(177, 0, 0, 0);
keybd_event(177, 0, 2, 0);
}

public static void Next()
{
keybd_event(176, 0, 0, 0);
keybd_event(176, 0, 2, 0);
}
#endregion


}
...全文
306 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
http://www.open-open.com/code/view/1434701046333 你看看吧,我一般是用 SendKeys.Send来输入文本的 /// <summary> /// 设置鼠标位置 /// </summary> /// <param name="x"></param> /// <param name="y"></param> /// <returns></returns> [DllImport("user32.dll")] public static extern bool SetCursorPos(int x, int y); [DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)] private static extern int mouse_event(int dwFlags, int dx, int dy, int cButtons, int dwExtraInfo); const int MOUSEEVENTF_MOVE = 0x0001; //移动鼠标 const int MOUSEEVENTF_LEFTDOWN = 0x0002; //模拟鼠标左键按下 const int MOUSEEVENTF_LEFTUP = 0x0004; //模拟鼠标左键抬起 const int MOUSEEVENTF_RIGHTDOWN = 0x0008; //模拟鼠标右键按下 const int MOUSEEVENTF_RIGHTUP = 0x0010; //模拟鼠标右键抬起 const int MOUSEEVENTF_MIDDLEDOWN = 0x0020; //模拟鼠标中键按下 const int MOUSEEVENTF_MIDDLEUP = 0x0040; //模拟鼠标中键抬起 const int MOUSEEVENTF_ABSOLUTE = 0x8000; //标示是否采用绝对坐标
  • 打赏
  • 举报
回复
用textbox控件,捕获它的keyup或者keydown事件
uj95170 2016-09-18
  • 打赏
  • 举报
回复
我认为最好的方法是获取记事本句柄,直接向记事本发送字符串。

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧