qq_29670983 2015-08-17 09:21 采纳率: 0%
浏览 1799
已采纳

请教一个SENDINPUT的问题

INPUT iput[1];
memset(iput, 0, 1 * sizeof(INPUT));
iput[0].type = INPUT_KEYBOARD;
iput[0].ki.wVk = VK_ESCAPE;
SendInput(1, iput, sizeof(INPUT));
如果把MEMSET这句去掉就不能按下ESC键了,如果把INPUT定义成iput,不带数组的也
不行,请问这是为什么呀?这不把它定义成数组不也行么?为什么有MEMSET和没有差别
这么大呢?

  • 写回答

2条回答 默认 最新

  • bytekiller 2015-08-19 09:23
    关注

    由于INPUT结构没有初始化,iput[0].ki.dwFlags的值不为0,不能正常工作。
    例如,如果KEYEVENTF_KEYUP位为1,表示放开按键
    如果KEYEVENTF_SCANCODE 或者 KEYEVENTF_UNICODE 位为1,则忽略wVk.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 matlab有关常微分方程的问题求解决
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法