NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 팁 앤 테크
  • 매뉴얼

    팁과 테크니컬 노하우를 확인하세요.

    팁 앤 테크

    팁과 테크니컬 노하우를 확인하세요.

    본 사이트의 컨텐츠는 저작권법의 보호를 받으므로 무단 복사, 게재, 배포 등을 금합니다.

    에디터 오토핫키 매크로 패킹 우회 및 더블클릭하는 방법.

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 엔지엠 매크로에는 [ 오토핫키 코드 실행 ] 액션이 포함되어 있습니다. 엔지엠 매크로는 자체적으로 패킹으로 암호화되어 있습니다. 엔지엠 매크로 안에서 오토핫키를 실행하면 좀 더 안전하게 사용할 수 있습니다. 우선, 이 테스트를 진행하기 위해 엔지엠 에디터를 실행하고 새로운 스크립트를 추가하세요.

    cnOuw3h.gif

     

     

    아래 그림처럼 에디터의 우측 하단에 외부 API 탭을 선택하세요. 그리고, 오토핫키 코드 실행 액션을 더블 클릭하거나 드래그하여 스크립트에 추가 해줍니다.

    tuJtdca.png

     

     

    오토핫키로 바탕화면의 내 PC 아이콘을 더블 클릭할건데요. 우선 클릭할 좌표를 알아내야 합니다. 일반적으로 오토핫키는 Active Window Info(Window Spy)를 사용합니다. 엔지엠 에디터에서도 좌표를 알아낼 수 있는데요. 아래 동영상처럼 도구 상자의 [ 마우스 클릭 ] 액션으로 쉽게 클릭할 위치 좌표를 알 수 있습니다.

     

     

    마우스 좌표를 알아냈으면 아래 코드를 오토핫키 코드에 작성 해줍니다. 보통은, 오토핫키 개발 도구를 사용해서 코드를 작성하고 복사한 후 붙여넣기로 사용하고 있습니다. 아무래도 긴~ 코드를 작성할 때는 전문 에디터를 사용하는게 편리하기 때문입니다. 아래 7부작으로 작성된 내용을 참고하시면 도움이 될겁니다.

    오토핫키를 이용한 업무 자동화 매크로 만들기 ]

    CoordMode, Mouse, Screen
    Click, 30, 30, 2

    zqY4xxW.png

     

     

    약간 중복된 내용이기는 하지만, 코드를 하나씩 살펴볼까요? 오토핫키는 기본적으로 좌표계가 상대적입니다. 현재 활성창 위치를 기준으로 좌표가 적용된다는 뜻입니다. 그래서, 클릭 좌표를 30, 30으로 설정하면 바탕화면의 좌상단에서 X 30, Y 30만큼 이동한 위치를 클릭하지 않습니다. 현재 활성창 위치에서 X 30, Y 30 이동한 곳을 클릭하게 됩니다. 따라서 상대 좌표가 아닌 절대 좌표를 사용하려면 CoordMode 옵션을 설정해야 합니다.

    CoordMode, ToolTip|Pixel|Mouse|Caret|Menu [, Screen|Window|Client]

     

    여러가지 옵션들이 있는데요. ToolTip은 마우스를 올리면 표시되는 별도의 창에 영향을 줍니다. Pixel은 [ 이미지 서치 ]나 [ 픽셀 서치 ]와 같은 함수에 영향을 줍니다. 그리고, Mouse는 [ 마우스 클릭 ]이나 [ 마우스 이동 및 드래그 ]에 영향을 줍니다. Caret은 [ 내장 변수 ]인 A_CaretX, A_CaretY에 영향을 주지만 많이 사용되지는 않습니다. Menu는 아래 그림과 같이 메뉴가 표시되는 영역에 영향을 줍니다.

    vCq5drT.png

     

     

    이제 중요한 Screen이 나옵니다. Screen은 윈도우 화면을 기준으로 좌표를 적용시켜줍니다. 보통 절대값(Absolute)이라고 합니다. 웹개발자도 자주 사용하기 때문에 개념은 익숙할겁니다. Window는 현재 활성화되어 있는 윈도우 위치를 기준으로 상대 좌표(Relative)가 적용됩니다. 마지막으로 Client는 제목 표시줄, 메뉴 표시줄, 상태 표시줄등을 제외한 제어 가능한 창을 말합니다. 

     

    오토핫키는 좌표계가 기본적으로 Window(상대 좌표, Relative)입니다. 엔지엠 매크로는 절대 좌표(Absolute)를 사용합니다. 참고로, FPS 게임과 같이 마우스를 기준으로 이동해야 하는 경우 오토핫키는 마우스 이동, 좌표 없는 클릭을 사용할 수 있습니다. 엔지엠 매크로는 마우스 속성에서 현재 위치를 True로 설정하면 마우스의 현재 위치를 기준으로 상대 좌표로 적용됩니다. 그리고, 엔지엠 매크로를 비활성으로 만들면 [ 핸들(Window) ] 오토핫키의 기본값인 Window로 좌표가 자동으로 처리됩니다. 예를 들어서 마우스 좌표를 100, 100으로 입력했더라도 메모장의 위치가 200, 200이라면 실제 클릭하는 좌표는 300, 300이 됩니다. 그래서, 활성 매크로와 비활성 매크로 그리고, 하드웨어 매크로(아두이노, DD, 인터셉션)의 좌표를 직접 계산하지 않아도 됩니다. 내부에서 자동으로 처리해주기 때문입니다.

    xvsGmy9.png

     

     

    위에서 CoordMode를 절대 좌표로 설정했기 때문에 아래 마우스 클릭 좌표를 X 30, Y 30으로 설정하고, 반복 횟수는 2로 입력해줍니다. 클릭을 두번하게 하면 더블클릭과 같이 동작합니다. 이제 스크립트를 저장하고, 실행 해보세요.

    Click, 30, 30, 2

     

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    댓글목록

    등록된 댓글이 없습니다.