zoukankan      html  css  js  c++  java
  • 有谁用过sendinput摸拟一个鼠标击键?

    我想用,但定义了MOUSEINPUT和INPUT结构,编译是时出现这个错误: 
    E:\My document\VC++programs\13\13.cpp(152) : error C2065: 'MOUSEINPUT' : undeclared identifier 
    E:\My document\VC++programs\13\13.cpp(152) : error C2065: 'INPUT' : undeclared identifier 
    请问是为什么? 
    如果能给出原码,就更好了。 

    问题点数:30、回复次数:17Top

     

    1 楼Wargod2002(Wargod2002) 回复于 2002-07-20 12:15:53 得分 2

    现在可以用mouse_event 
    Top

    2 楼zhuwenzheng(卧薪尝胆) 回复于 2002-07-20 12:21:48 得分 20

    lack *.h or *.lib 
    Top

    3 楼brapler(ANN) 回复于 2002-07-20 12:43:25 得分 0

    我的是win2000,msdn上就在2000上用sendinput,再说我也想用一用。 

    zhuwnzheng(),缺哪个?怎么加?Top

    4 楼zhuwenzheng(卧薪尝胆) 回复于 2002-07-20 12:49:30 得分 0

    now my computer have no msdn,so i dont give u a correct answer.Maybe you type your code,i give u some advice. 
    Top

    5 楼zhuwenzheng(卧薪尝胆) 回复于 2002-07-20 12:59:59 得分 0

    INPUT input; 
    input.type=INPUT_MOUSE; 
    input.mi.dwFlags=MOUSEEVENTF_LEFTDOWN; 
    SendInput(1,&input,sizeof(input));Top

    6 楼brapler(ANN) 回复于 2002-07-20 16:48:18 得分 0

    不行,只要有 
    INPUT input; 
    就报错,是不是sdk版本问题?Top

    7 楼camel_vc(骆驼) 回复于 2002-07-20 20:24:30 得分 2

    Requirements 
    Windows NT/2000/XP: Included in Windows NT 4.0 SP3 and later. 
    Windows 95/98/Me: Included in Windows 98 and later. 
    Header: Declared in Winuser.h; include Windows.h.Top

    8 楼DragonCity(自己发工资) 回复于 2002-07-20 21:03:29 得分 2

    呵呵,我是只会VB,今天来提问,顺便插句话 
    我试过,用API 函数 PostMessage可以实现诸如模拟鼠标移动的消息。不知道对你有没有帮助。Top

    9 楼zhuwenzheng(卧薪尝胆) 回复于 2002-07-20 21:31:50 得分 0

    typedef struct tagINPUT { 
    DWORD type; 
    union {MOUSEINPUT mi; 
    KEYBOARDINPUT ki; 
    HARDWAREINPUT hi; 
    }; 
    }INPUT, *PINPUT; 

    Header Declared in Winuser.h, include Windows.h 
    Minimum operating systems Included in Windows 98, Windows NT 4.0 Service Pack 3 



    Top

    10 楼brapler(ANN) 回复于 2002-07-20 22:44:39 得分 0

    zhuwenzhen:你自已试了一下吗?Top

    11 楼lihao_ningxia(耗子) 回复于 2002-07-21 08:10:46 得分 2

    我用了POSTMESSAGE(HWND,MOUSE_EVENT,WM_MOUSELBUTTON,0)可以传过去!Top

    12 楼brapler(ANN) 回复于 2002-07-21 11:36:36 得分 0

    发消息不行的,我必须用模拟击键. 

    是缺了lib或h文件,但我不知道如何加呀? 
    帮帮小弟吧!Top

    13 楼brapler(ANN) 回复于 2002-07-21 11:39:06 得分 0

    Requirements 
    Windows NT/2000: Requires Windows NT 4.0 SP3 or later. 
    Windows 95/98: Requires Windows 98. 
    Header: Declared in Winuser.h; include Windows.h. 
    Library: Use User32.lib. 
    ------------------------------------------- 

    请问这句是什么意思 : 
    Windows NT/2000: Requires Windows NT 4.0 SP3 or later. 
    Top

    14 楼siphonelee(sifone) 回复于 2002-07-21 13:09:33 得分 2

    upTop

    15 楼zhuwenzheng(卧薪尝胆) 回复于 2002-07-22 09:31:19 得分 0

    我试过了,是可以的,你可以重新生成一个MFC的程序,添加#include "winuser.h" 
    然后定义INPUT input,最后 Input.type=INPUT_MOUSE; 
    Input.mi.dwFlags=MOUSEEVENTF_LEFTDOWN; 
    SendInput(1,&Input,sizeof(Input)); 


    Windows NT/2000: Requires Windows NT 4.0 SP3 or later的意思是需要SP3 PACKAGE或更高版本 

    Top

    16 楼brapler(ANN) 回复于 2002-07-22 13:07:05 得分 0

    Thank you very much Zhuwenzheng. 
    this problem is resolved.
  • 相关阅读:
    2019ICPC徐州 H.Yuuki and a problem
    wprintf 输出中文
    bit数组
    Vs2010 Atl工程手工添加连接点
    dll非模态窗口不响应按钮消息
    VC中给控件添加ToolTip
    在Dialog中添加工具条
    在Dialog中添加状态栏
    Vc添加快捷键
    在VC中调用COM组件的方法
  • 原文地址:https://www.cnblogs.com/mfryf/p/2352600.html
Copyright © 2011-2022 走看看