전체검색 결과
키워드를 입력하시면 검색이 가능합니다.
안녕하세요. 엔지엠소프트웨어입니다. 오늘은 매크로 프로그램을 실행했다가 중지하는 기능을 만들어 볼께요. 기존 엔지엠 매크로 6에서는 각각의 스크립트를 플레이할 때 Thread를 사용했었어요. 스레드를 사용하다보니 여러가지 문제점들이 있었고, 이런 문제들을 해결하기 위해 코드를 계속 수정하다보니 전체적으로 성능이 저하되는 결과를 초래했습니다. 성능을 개선하고, Abnormal Error들을 처리하다보니 코드가 많이 지저분해졌어요. 더 큰 문제는 너무 많은 부분을 개발했기 때문에 스레드 처리 부분을 개선하기가 불가능했습니다. 새로…
안녕하세요. 엔지엠소프트웨어입니다. 잠시 쉬어가는 코너로 Krypton 콘트롤의 최근 문서(Recent Documents)를 저장하고, 불러오는 방법에 대해서 알아볼께요. 그동안 매크로 제작 클라이언트의 기능을 최소한으로만 유지하고, 액션을 제작하는데 시간을 할애하고 있었습니다. 어느정도 기본 기능이 만들어지다보니 테스트를 위해 열고 닫기를 반복하는 상황이 점점 많아지고 있습니다. 파일 메뉴를 클릭하고, 스크립트 열기에서 파일을 찾아서 열기 버튼까지 많은 단계를 거쳐야 해서 상단히 귀찮더라고요. 그래서, 한번 열었던 스크립트를 최근…
안녕하세요. 엔지엠소프트웨어입니다. 매크로의 기본 기능인 마우스와 키보드 관련해서 모두 개발이 끝났습니다. 글을 쓰면서 이래저래 수정하다보니 코드가 많이 바뀌긴 했지만, 큰 줄기만 보면 누구나 쉽게 매크로 프로그램을 제작할 수 있을겁니다. 어느정도 코딩을 읽을줄 아신다면 말이죠^^; 아무튼, 매크로에서 멀티 다클라 작업을 할 때 크게 2가지 방식이 있습니다. 각각의 프로그램에 대응하는 스크립트를 하나씩 만드는것과 기준이 되는 프로그램에 스크립트를 만들어서 복사하는겁니다. 단순히 기준이 되는 프로그램에서 100, 100 좌표를 …
안녕하세요. 엔지엠소프트웨어입니다. 앞서 키보드 쓰기 액션을 만들어서 사용해봤는데요. 오늘은 키보드의 나머지 기능들을 모두 만들어보고, 테스트까지 해보겠습니다. 키보드 쓰기 액션으로는 복사(Control+C), 붙여넣기(Control+V)와 같은 동작을 수행할 수 없습니다. 따라서, 키보드 다운과 업 액션이 필요한데요. 사람이 이 동작을 수행한다고 하면 아래와 같이 스크립트를 만들어야 합니다. 사람이 하는 동작과 동일하죠? 메모장을 2개 켜놓고복사, 붙여넣기를 해볼까요? 첫번째 메모장에서 전체 선택 후 복사…
안녕하세요. 엔지엠소프트웨어입니다. 마우스 관련 액션은 이 글이 마지막이 될듯 하네요. 마우스 관련 기능은 마우스 더블 클릭과 휠 조작만 남았는데요. 크게 어려운 부분이 없어서 2개를 묶어서 같이 설명하면 좋을듯 합니다. 우선, 마우스 더블 클릭에 대해서 알아볼께요. 마우스 더블 클릭은 마우스 클릭을 2번 하는것과 같습니다. 그렇기 때문에 아래와 같이 마우스 클릭 액션을 상속 받아서 2회 실행해주면 됩니다. namespace Ai.Model.Action.Mouse { [Serializable] public clas…
안녕하세요. 엔지엠소프트웨어입니다. 이전 시간에 마우스 클릭과 드래그 기능까지 개발했는데요. 마우스 드래그는 마우스 다운과 업으로 어느정도 커버가 가능합니다. 하지만, 대부분의 프로그램들이 마우스 다운과 업으로 드래그를 구현하기는 쉽지 않습니다. 그래서, 별도로 마우스 드래그 액션을 만들고 프로그램에서 동작하는지 테스트 해보도록 할께요. 아직 이전 시간에 알아본 내용을 읽어보지 않았다면 먼저 읽어보고 오세요^^ 마우스 드래그 액션은 아래와 같이 시작 좌표와 끝 좌표가 있어야 합니다. public class DragM…
안녕하세요. 엔지엠소프트웨어입니다. 오늘은 마우스 클릭 드래그에 대해서 알아볼건데요. 이미 마우스 클릭은 개발했기 때문에 이전 글을 참고하시면 될거 같아요. 우선, 마우스 드래그는 이동시키고 싶은 어떤 물체에서 마우스를 누르고, 이동할 위치까지 마우스를 움직인 후 버튼을 때면 됩니다. 사람이 이 동작을 할 때는 무의식중에 무심코 동작을 하겠지만, 컴퓨터에게는 하나씩 설명해줘야 해요. 그래서, 비전문가나 일반인 또는 어린아이에게 순서대로 설명을 잘 하는 사람이 프로그래밍이나 매크로 제작도 잘 합니다. 너무 당연한 이야기인가요? …
안녕하세요. 엔지엠소프트웨어입니다. 이전에 이미지 서치(이미지 매치) 액션을 만들었는데요. 당시에는 이미지 처리 프로세스와 마우스 클릭에 대해 알아봤습니다. 이미지 서치는 윈도우 화면 또는 특정 프로그램에서 클릭하고 싶은 버튼이나 몬스터, 캐릭터등등... 대상을 찾는 방법입니다. 대상을 찾으면 해당 위치를 자동으로 클릭해주는데요. 오늘은 이런 조건에 따라서 로직을 처리하는 방법에 대해 알아보도록 하겠습니다. 아직 개선해야 할 내용들이 많이 있긴한데요. 이런 부분들은 나중에 리펙토링할 때 정리하기로 하고, 큰 로직만 구성 해보는…
안녕하세요. 엔지엠소프트웨어입니다. 오늘은 변수에 저장되어 있는 데이터를 어떻게 처리해야 하는지에 대해서 알아볼건데요. 1부에서 변수를 만들고, 어떻게 사용자에게 표시할지에 대해 알아봤습니다. 이 내용을 먼저 읽어보고 2부 내용을 보면 이해하기가 좀 더 쉬울겁니다. 논리적인 프로그래밍 코드보다는 시각적으로 보는게 이해하는게 빠르니까요. 엔지엠 매크로에서 변수를 처리하는 방법은 단순합니다. 우선, 액션을 실행하기 위한 조건들이 있는데요. 일반적인 설정은 기본값으로 셋팅되어 있어서 딱히 변경할 필요가 없을수도 있습니다. 예를 들어…
안녕하세요. 엔지엠소프트웨어입니다. 매크로의 꽃! 매크로의 핵심이라고 할 수 있는 변수 기능을 만들어 보겠습니다. 일단 변수가 뭔지 알아야 하는데요. 이 부분은 엔지엠 매크로를 사용하시는 분들이라면 다 알고 있는 내용이라서 설명하지 않고 넘어가도록 하겠습니다. 혹시라도 변수가 뭔지 잘 모르는 분들은 아래 글을 참고 해보세요. [ 변수란? ] 엔지엠 매크로에서 변수도 프로그래밍 언어에서의 변수와 의미는 같습니다. 다만, 각각의 액션들의 데이터를 주고 받기 위한 저장 공간으로 사용한다는 것만 기억하면 될듯 합니다. 예를 들어서 …