본문 바로가기
오토 매크로

비활성 매크로에서 창 이동과 창 크기 변경에 대한 이해

by ngmaster 2022. 9. 15.
반응형

무료 매크로 프로그램 다운로드

http://ngmsoftware.com/bbs/board.php?bo_table=product1&wr_id=32 

 

엔지엠소프트웨어

엔지엠 매크로는 복잡한 반복작업을 자동화할 수 있습니다. PC 게임, 모바일 게임을 최적으로 지원하며 모든 PC 프로그램 및 업무에 적용할 수 있습니다.

www.ngmsoftware.com

#매크로 #매크로프로그램 #메크로 #g매크로 #마우스매크로 #키보드매크로 #엑셀매크로 #키매크로 #수강신청매크로 #로지텍마우스매크로 #매크로키보드 #파이썬매크로 #매크로뜻 #매크로마우스 #로지텍매크로 #ld플레이어매크로 #오토마우스매크로 #키보드마우스매크로 #오토핫키매크로 #이미지매크로 #이미지인식매크로 #하드웨어매크로 #화면인식매크로 #선착순구매매크로 #이미지서치매크로 #한글매크로

  • 엔지엠 무료: 무료 (전체 기능의 50프로)
  • 엔지엠 커뮤니티 월 이용료: 4,500원, 1년 이용료: 55,000원 (전체 기능의 80프로)
  • 엔지엠 얼티밋 월 이용료: 6,500원, 1년 이용료: 77,000원 (전체 기능의 90프로)
  • 엔지엠 엔터프라이즈 월 이용료: 9,200원, 1년 이용료: 110,000원 (전체 기능 사용)

 

안녕하세요. 엔지엠소프트웨어입니다. 비활성 매크로와 다클라 매크로 또는 다계정 매크로에 대해서 가장 많이 받는 질문은 "창이 이동하거나 크기가 변경되더라도 정상 동작하는가?"입니다. 우선, 결론부터 말씀드리면 비활성 매크로에서는 창이 이동하거나 가려지는건 상관 없습니다. 하지만, 창 크기가 변경되면 이미지의 크기가 바뀌므로 [ 이미지 체크 ]나 [ 서치 ] 또는 [ 매치 ]가 정상 동작하지 않게 됩니다. 간단한 테스트를 위해 엔지엠 에디터를 실행하고, 스크립트를 하나 추가하세요.

※ 필독 - [ 비활성 다클라 매크로를 만들 때 주의사항 ]

 

 

저는 녹스 앱플레이어를 대상으로 테스트할건데요. 녹스가 없다면 엘디 또는 모모, 블루스택, SCRCPY와 같은 앱플레이어를 사용해도 됩니다. 비활성 매크로를 만들기전에 제어할 프로그램의 정보를 미리 알아두는게 좋습니다. 아래 그림과 같이 [ 프로그램 정보 ] 액션을 스크립트에 추가하세요.

  1. 도구 상자 탭 클릭
  2. 응용 프로그램 카테고리 확장
  3. 프로그램 정보 액션 클릭
  4. 더블 클릭 또는 드래그로 스크립트에 추가

 

 

아래 동영상과 같이 녹스의 프로그램 정보 액션에서 매인창을 선택한 후 스크립트를 실행 해보세요. 창의 크기 및 위치를 비롯한 여러가지 정보를 알 수 있습니다.

 

 

제 경우에는 창의 위치가 "101, 132" 입니다. 창 크기는 "783, 526" 이네요. 글을 작성하기 위해 녹화나 캡쳐 프로그램 때문에 위치가 "0, 0" 은 아닙니다. 여러분들은 수동으로 좌표를 계산할 일이 없을겁니다. 하지만, 혹시라도 오프셋이나 절대 좌표를 계산해야 할수도 있기 때문에 프로그램의 위치를 0, 0으로 고정한 후 매크로를 만드는게 좋습니다. 매크로를 제작하기 전에 비활성으로 제어할 프로그램의 위치를 0, 0으로 맞추려면 [ 이동 ] 액션을 사용하면 됩니다. 아래와 같이 이동 액션 2개를 추가하세요. 그리고, 둘다 녹스 매인창을 선택 해줍니다.

 

 

첫번째 이동 액션은 그대로 두고, 두번째 이동 액션의 위치를 "101, 132"로 변경 해줍니다. 이 스크립트를 실행하면 녹스 매인창이 윈도우 화면 왼쪽 상단 끝으로 이동한 후 원래 위치로 되돌아옵니다. 창이 너무 빠르게 이동되면 눈으로 확인이 불가능하니 실행 전 지연 속성에 500정도 값을 입력하세요.

 

 

아래 동영상을 보면 녹스 매인창이 윈도우 좌상단으로 이동했다가 다시 원래 자리로 되돌아오는걸 확인할 수 있습니다.

 

 

이렇게 이동 액션을 사용하면 항상 고정된 위치에서 작업할 수 있는 환경을 만들 수 있습니다. 이번에는 크기 변경에 대해 알아볼까요? 아래와 같이 [ 크기 변경 ] 액션도 2개 추가하세요.

 

 

첫번째 크기 변경에서 원래 크기보다 가로와 세로를 100씩 크게 설정했습니다. 그리고, 두번째 크기 변경은 원래 크기인 "783, 526"을 입력했습니다. 이동 액션에서 테스트했던것과 동일하게 크기 변경 액션도 두번째는 실행 전 지연에 500정도 입력 해주세요.

 

 

스크립트를 실행해보면 아래 동영상과 같이 녹스가 이동한 후 복귀합니다. 그리고, 크기도 커졌다가 원래 크기로 돌아옵니다.

 

 

여기서 생각해볼 문제는 제어하려는 "프로그램의 위치가 이동될 때 스크립트가 정상 동작하는가?"와 "프로그램의 크기가 변경되었을 때 스크립트가 정상 동작하는가?"입니다. 위에서도 말했듯이 이동은 상관 없습니다. 그러나 크기는 이미지 조건에 영향을 주므로 매크로가 정상 동작하지 않게 됩니다. 그래서, 매크로를 제작할 때 창의 위치와 크기를 고정해놓고 작업하는게 좋습니다. 그래야 나중에 실수로 창 크기나 위치가 변경되었을 때 원상 복구할 수 있기 때문입니다. 창이 이동하더라도 정상 동작하는지 테스트하기 위해 아래와 같은 간단한 스크립트를 작성해줍니다.

 

1. ADB 사용

이동 액션은 이 테스트를 정상적으로 수행하기 위해 원래 자리로 이동하도록 했습니다. [ ADB ] 액션을 사용해서 스마트폰이나 안드로이드 앱플레이어에 연결합니다.

 

 

클릭은 녹스의 Tools를 클릭하도록 설정되어 있습니다.

 

 

스크립트를 실행하면 현재 위치에서 Tools를 클릭하게 됩니다.

 

 

녹스 앱플레이어가 아래로 100픽셀 이동한 상태에서 실행해도 동일하게 Tools를 클릭합니다.

 

 

그림판으로 녹스 창을 가린 후 실행해도 정상 동작합니다.

 

 

ADB에 연결되어 있기 때문에 창을 최소화해도 클릭은 정상 동작합니다. 하지만, 이미지 조건들은 동작하지 않으니 이점은 참고해주세요.

 

 

2. 핸들 사용

[ 핸들 ]은 윈도우 API를 사용합니다. 안드로이드 앱플레이어를 제어하는 ADB보다 속도가 월등히 빠르지만~ 약간 더 복잡할 수 있습니다. 아래 동영상을 참고해서 핸들 추가 액션에서 녹스 플레이어의 매인 창을 선택(F1) 해줍니다.

 

 

스크립트를 실행해보면 마우스 좌표 설정 없이 ADB와 동일하게 클릭하는걸 알 수 있습니다.

 

 

이번에는 창을 아래로 100픽셀 이동한 후 다시 실행 해보세요. 이번에도 정상적으로 클릭합니다.

 

 

그림판으로 녹스를 가려도 잘 동작하는걸 알 수 있습니다.

 

 

안드로이드 앱플레이어의 창을 최소화 시켜놔도 클릭 정도는 정상적으로 처리됩니다. 하지만, ADB와 동일하게 이미지 조건들은 처리가 되지 않습니다. 창을 최소화하면 윈도우가 그래픽 랜더링을 하지 않기 때문인데요. 이 상태에서 캡쳐를 해봤자~ 최소화 할 때 화면으로 멈춰있기 때문입니다. 마우스를 올려보면 썸네일과 같은 작은 이미지는 가능하지만, 문제는 크기가 작아서 대상 이미지와 비교해도 의미가 없습니다.

 

 

간단하게 ADB와 핸들(윈도우 API)을 이용해서 비활성 매크로를 만들 때 주의해야 할점과 특징들에 대해 알아보았습니다. 엔지엠 매크로는 ADB, 활성, 비활성, 클래스디디, 아두이노, 인터셉션과 같은 인터페이스를 제공합니다. 크게 활성, 비활성, 하드웨어(기계식) 신호로 분류할 수 있습니다. 다른 매크로 프로그램들과 가장 큰 차이점은 이런 인터페이스간 이동이 자유롭다는 점입니다. 위에서 ADB와 핸들 추가 액션만 변경해도 아래에 모든 액션들이 인터페이스를 자동으로 따라갑니다. 좀 더 쉽게 말해서 위쪽에 위치한 ADB, 핸들, 아두이노와 같은 액션만 갈아 끼우면 아래에 마우스나 키보드가 해당 인터페이스로 자동 변환됩니다.

 

 

인터페이스를 사용하지 않으면 윈도우 기본 API(활성 모드)를 사용합니다. 또한, 다른 매크로 프로그램들이 따라올 수 없는 기술이 하이브리드 모드입니다. 활성 모드로 동작하다가 비활성 모드로 빠르고 쉽게 전환이 가능하며, 하나의 스크립트에서 활성, 비활성, 기계식(하드웨어) 입력 신호를 자유롭게 변환하면서 동시에 사용할 수 있습니다. 그렇기 때문에 각각의 인터페이스들은 연결과 연결을 끊을 수 있는 옵션이 존재합니다.  또한, 내부적으로 한번 연결된 인터페이스는 메모리에 유지하고 있기 때문에 재연결 시 속도에 저하가 없습니다. 타 메크로를 사용하다가 넘어오는 분들이 많은 이유이기도 합니다.

[ 초보자도 쉽게 따라할 수 있는 기초 학습 강좌 보기 ]

 

원본 글 보기

http://ngmsoftware.com/bbs/board.php?bo_table=tip_and_tech 

 

엔지엠소프트웨어

엔지엠 매크로는 복잡한 반복작업을 자동화할 수 있습니다. PC 게임, 모바일 게임을 최적으로 지원하며 모든 PC 프로그램 및 업무에 적용할 수 있습니다.

www.ngmsoftware.com

#비활성매크로 #g102매크로 #철권매크로 #레이저마우스매크로 #ghub매크로 #녹화매크로 #키보드반복매크로 #로지텍마우스광클매크로 #플라스크매크로 #윈도우매크로 #비활성g매크로 #오토매크로 #자동사냥 #주식매크로 #오토핫키키보드 #오토핫키마우스 #오토핫키이미지 #지존오토 #기계식매크로 #하드웨어매크로 #무한반복매크로 #대량이메일발송매크로 #엑셀VBA매크로 #주식모니터링매크로

반응형

댓글