zend 发表于 2011-6-26 21:47:17

求助:BCB,模拟鼠标事件问题

以下代码,在一般窗体中能模拟鼠标事件,但在桌面上模拟不响应,我的操作系统是WIN7,请问哪位有没有更好的方式?多谢!
mouse_event(MOUSEEVENTF_LEFTDOWN,   0,   0,   0,   0);   //模拟鼠标左键按下事件
mouse_event(MOUSEEVENTF_LEFTUP,   0,   0,   0,   0);   //模拟鼠标左键松开事件

zend 发表于 2011-6-29 15:45:49

继续求助……,期待高人出现

玩WINDOWS游戏,上网全部没问题。
但点击桌面或者WINDOWS文件夹只能响应一次。
代码如下,用空格键模拟鼠标左键。
#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
#include "windows.h"
#include "shellapi.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
#include <Mmsystem.h>
//---------------------------------------------------------------------------


TForm1 *Form1;
int f;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void WINAPI _timeSetEvent(UINT uTimerID,UINT uMsg, DWORD dwUser, DWORD dw1, DWORD dw2)
{
POINT lpPoint;
GetCursorPos(&lpPoint);
SetCursorPos(lpPoint.x, lpPoint.y);
        if(GetAsyncKeyState(VK_SPACE)&0x8000 )
        {
        if(f==0)
        {
        f=1;
       mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
        }
        }
        else
        {
                if(f==1)
                {
                f=0;
                mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
                }
        }
}
void __fastcall TForm1::FormShow(TObject *Sender)
{
MMRESULT mr = timeSetEvent( 15,1, _timeSetEvent,0,TIME_PERIODIC); //15MS回调
f=0;
}
//---------------------------------------------------------------------------

zc3909 发表于 2011-6-29 15:58:48

void MouseClick(int x,int y)
{
    SetCursorPos(x,y);
    mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
    Sleep(10);
    mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
}

VC验证功能正常

zend 发表于 2011-6-29 16:51:19

谢谢指点!
在桌面点击还是不行,我生成了一个EXE文件,按下 空格 时,窗体为红色+模拟左键按下,放开时为为WINDOWS窗体颜色+模拟左键放开,颜色变化正常,但点击功能没有实现。

点击此处下载 ourdev_653292H1G14U.zip(文件大小:4.10M) (原文件名:Release.zip)

zend 发表于 2011-6-29 17:24:54

最关键是在别的软件界面使用正常,只有在桌面和WINDOWS文件夹里不正常。
页: [1]
查看完整版本: 求助:BCB,模拟鼠标事件问题