전체검색 결과
키워드를 입력하시면 검색이 가능합니다.
안녕하세요. 엔지엠소프트웨어입니다. 오늘은 간단한 내용인데요. 이 내용과 문자를 비교할 수 있는 조건 액션을 2부에서 만들어보고, 매크로 플레이어의 상태를 체크해서 중지되어 있으면 다시 실행하는 프로세스를 만들어 보도록 하겠습니다. 이번 내용은 앞서 만들었던 플레이어 상태 정보를 사용자가 확인할 수 있도록 하는 액션입니다. 상태를 확인할 수 있으면, 상태 정보를 변수에 저장하고 저장된 내용을 조건에서 판단할 수 있습니다. 개발자가 아닌 경우 변수에 대한 이해가 어려울 수 있습니다. 사실, 프로그래밍에 처음 입문하는 분들도 변수…
안녕하세요. 엔지엠소프트웨어입니다. 이전 시간에 만든 스크립트 실행 액션은 기본적으로 비동기로 작동합니다. 비동기란, 자신을 실행한 부모 스크립트와 동시에 실행된다는 의미입니다. 동기(Synchronous)와 비동기(Asynchronous)의 차이점은 아래 그림에서 잘 설명하고 있습니다. 그래서, 엔지엠 매크로에서도 동기적인 처리와 비동기적인 처리를 사용자가 선택할 수 있도록 옵션을 추가해줘야 합니다. 이 내용은 앞서 스크립트 실행에서 언급만 하고, 구현은 하지 않았었는데요. 이번 시간에 비동기적으로 처리되던 것을 동기…
안녕하세요. 엔지엠소프트웨어입니다. 매크로 프로그램에서 아무리 많은 기능을 제공한다 하더라도 윈도우의 기본 커멘드라인을 대체할 수 없습니다. 윈도우 커멘드라인과 윈도우 쉘을 사용하면 안되는게 없을정도로 막강한 기능들을 제공하고 있기 때문입니다. 또한, 배치파일을 이용해서 어느정도 단순한 매크로 프로세스를 만들수도 있어요. 구글 크롬이나 엣지처럼 커멘드라인 명령어를 제공하는 프로그램들은 배치파일과 같이 사용하면 막강한 성능을 낼 수도 있습니다. 커멘드라인이 막강한 기능을 가지고 있지만, 전통적인 검은 화면에 명령을 타이핑해서 입…
안녕하세요. 엔지엠소프트웨어입니다. 매크로 프로그램을 제어할 때 필요한 필수 기능인 일시 중지에 대해 알아볼건데요. 오늘 이 내용까지 만들면 모든 기능을 전부 구현하게 됩니다. 앞서 실행과 중지에 대해서 알아봤기 때문이죠. 아직 추가적으로 개발해야 할 내용들이 더 많이 남았지만, 매크로를 제작하면서 테스트해야 할 일들이 많은데요. 그동안 테스트를 실행하고 로그를 보는 정도로만 했었어요. 좀 더 복잡한 스크립트를 테스트하려면 중지와 일시 중지 기능이 꼭 필요합니다. 테스트 시간을 단축하기 위해서죠^^ 일단 이전 시간에 알아본 태…
안녕하세요. 엔지엠소프트웨어입니다. 이전 시간에 클라이언트(에디터, 플레이어)에서 실행중인 매크로를 중지하는 방법을 알아봤는데요. 오늘은 스크립트 중지 액션을 만들어 볼께요. 아마도, 다음 시간에는 실행중인 스크립트를 일시 중지하는걸 만들거 같네요. 일단 스크립트를 제어하는 모델들을 모두 추가해놓고, BaseModel에 스크립트를 선택할 수 있도록 해두었습니다. 여기까지는 1부 내용을 참고하시면 됩니다. 아래는 스크립트 중지 모델인데요. 추가적인 옵션들을 더 제공해야 할지 고민중입니다. 현재는 선택한 스크립트를 중지합니다. 만…
안녕하세요. 엔지엠소프트웨어입니다. 오늘은 매크로 프로그램을 실행했다가 중지하는 기능을 만들어 볼께요. 기존 엔지엠 매크로 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…