아래와 같이 만들어 보았습니다.
오른 쪽 마우스 버튼을 한번 누르면 10번 클릭해주는 프로그램입니다.
문제는 이게 Form1이 활성화 되어있을 때에만 인식을 합니다.
인터넷 탐색기에서 오른 클릭을 해도 인식을 못합니다.
그 문제를 해결하기 위해서 어떻게 해야될까요?
%필터링되는 단어는 한글로 대체했습니다
--------------------------------------------
Public Class Form1
Public Const 마우스EVENTF_LEFTDOWN = &H2
Public Const 마우스EVENTF_LEFTUP = &H4
Private Const 마우스EVENTF_RIGHTDOWN = &H8
Private Const 마우스EVENTF_RIGHTUP = &H10
Declare 펑션 api마우스_event Lib "user32.dll" Alias "마우스_event" (ByVal dwFlags As Int32, ByVal dX As Int32, ByVal dY As Int32, ByVal cButtons As Int32, ByVal dwExtraInfo As Int32) As Boolean
Private Sub _마우스Up(ByVal sender As Object, ByVal e As 마우스EventArgs) Handles MyBase.Click
If e.Button = 마우스Buttons.Right Then
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTDOWN, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTUP, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTDOWN, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTUP, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTDOWN, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTUP, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTDOWN, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTUP, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTDOWN, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTUP, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTDOWN, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTUP, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTDOWN, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTUP, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTDOWN, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTUP, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTDOWN, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTUP, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTDOWN, 0, 0, 0, 0)
System.Threading.Thread.Sleep(50)
Call api마우스_event(마우스EVENTF_RIGHTUP, 0, 0, 0, 0)
End If
End Sub
End Class