이전에 MFC 버전 마우스 클릭 매크르롤 제작한 적 있습니다.
뭐 그닥 불편 없기는 했지만, 마우스 위치 오차등 약간 문제가 있었고, C#으로도 한번 제작해보까? 하는 생각에 뚝딱~ 만들어봤습니다. 소스코드도 얼마 안되니 풀소스 코드도 공개합니다.
 
 
 
public partial class MainForm : Form
{
    [DllImport("user32.dll")]
    static extern void keybd_event(byte vk, byte scan, int flags, ref int extrainfo);
    [DllImport("user32.dll")]
    static extern void mouse_event(uint dwFlags, uint dx, uint dy, uint dwData, int dwExtraInfo);

    private const uint MOUSEMOVE    = 0x0001;   // 마우스 이동
    private const uint ABSOLUTEMOVE = 0x8000;   // 전역 위치
    private const uint LBUTTONDOWN  = 0x0002;   // 왼쪽 마우스 버튼 눌림
    private const uint LBUTTONUP    = 0x0004;   // 왼쪽 마우스 버튼 떼어짐

    private bool m_bStart = false;

    private System.Timers.Timer m_ClickTimer;
    public MainForm()
    {
        InitializeComponent();

        m_ClickTimer = new System.Timers.Timer();
        m_ClickTimer.Elapsed += new System.Timers.ElapsedEventHandler(ClickTimeEvent);
    }

    private void OnClickStart(object sender, EventArgs e)
    {
        m_bStart = !m_bStart;
        m_ClickTimer.Enabled = m_bStart;

        if( !m_bStart )
        {
            btn_Start.Text = "시작";
            txt_Time.ReadOnly = false;
        }
        else
        {
            btn_Start.Text = "중지";
            txt_Time.ReadOnly = true;
            m_ClickTimer.Interval = Convert.ToUInt32(txt_Time.Text.ToString());
        }
    }

    private void ClickTimeEvent(object sender, System.Timers.ElapsedEventArgs e)
    {
        MouseClick(System.Windows.Forms.Cursor.Position);
    }

    private void MouseClick(Point pos)
    {
        mouse_event(LBUTTONDOWN, 0, 0, 0, 0);
        mouse_event(LBUTTONUP, 0, 0, 0, 0);
    }

    private void OnKeyPress(object sender, KeyPressEventArgs e)
    {
        if (e.KeyChar < 48 || e.KeyChar > 57)
        {
            MessageBox.Show("숫자만 입력 가능합니다.", "오류");
            txt_Time.Text = "";
            e.Handled = true;
        }
    }
}
 



출처: http://kindtis.tistory.com/169 [Game Programmer Life]

 

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

 

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED