NGMsoftware

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

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

    팁 앤 테크

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

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

    에디터 비활성 매크로 - 카카오톡 매크로에서 메세지 줄바꿈 처리하는 방법.

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 오늘은 도구상자의 키보드 카테고리에 있는 [ 텍스트 쓰기 ]와 [ 키보드 입력 ]을 이용해서 카카오톡 메세지를 어떻게 보내는지 알아보도록 하겠습니다. 테스트를 위해 엔지엠 매크로를 실행하고, 새로운 스크립트를 하나 추가하세요.

    cnOuw3h.gif

     

     

    비활성 매크로를 만드는거라서 [ 핸들 추가 ]가 필요합니다. 아래 동영상을 참고해서 핸들 추가 액션을 스크립트에 추가하세요. 그리고, 카카오톡의 메세지 적는 부분을 선택한 후 F1을 누르세요. 참고로, 엔지엠 매크로에서 창 선택, 이미지 선택, 찾기 영역 설정등등... 모두 F1 또는 F2키를 눌러야 선택됩니다.

     

     

    [ 텍스트 쓰기 ] 액션과 [ 키보드 입력 ] 액션을 추가하세요.

    c54qXjG.png

     

     

    텍스트 쓰기 액션에서 텍스트에 "안녕하세요."를 입력하고, 비활성 모드를 "SendMessage"로 변경하세요. 대부분의 프로그램은 기본값인 "PostMessage"로 텍스트를 쓸 수 있습니다. 하지만, 일부 프로그램은 PostMessage로 텍스트 쓰기가 안되는데요. 이럴때는 SendMessage로 강제로 입력해야 합니다. 여러분들은 PostMessage와 SendMessage를 번갈아가면서 테스트 해보세요.

    sKZIq5e.png

     

     

    키보드 입력은 엔터(엔지엠에서 엔터는 RETURN입니다.)로 선택해주세요.

    SpcvBKo.png

     

     

    매크로를 실행 해보면 카카오톡 대화창에 "안녕하세요." 텍스트가 써지고, 엔터키로 메세지가 전송됩니다. 아래 동영상을 보면 정말 순식간에 입력되는걸 알 수 있습니다.

     

     

    이번에는 카카오톡에서 줄바꿈으로 메세지 보내는 방법을 알아보겠습니다. 아래 그림과 같이 텍스트 쓰기에서 줄바꿈한 후 추가 내용을 작성 해주세요.

    Xd6gUGm.png

     

     

    매크로를 다시 실행 해보면 아래 동영상처럼 두줄로 메세지가 보내진것을 확인할 수 있습니다.

     

     

    만약, [ 변수 ]나 [ 엑셀 ] 또는 [ 데이타베이스 ]에서 한줄씩 읽어온 데이타를 한번에 전송하려면 어떻게 해야 할까요? 이런 경우에는 카카오톡 메세지창에서 줄바꿈하는걸 먼저 알아내야 합니다. [ 구글 ]에서 "카카오톡 줄바꿈"으로 검색 해보세요. 아래 그림처럼 카카오톡 공식 사이트에서 설명을 찾아볼 수 있습니다.

    RDJIl72.png

     

     

    카카오톡 메세지창에서 줄바꿈은 Ctrl+Enter 또는 Shift+Enter인걸 알았으니 적용시켜보면 될거 같습니다. 우선, 첫번째 텍스트 쓰기에 추가했던 내용을 지우고, "안녕하세요."만 남겨두세요. 그리고, 마지막에 추가한 텍스트 쓰기 액션에서 "엔지엠소프트웨어입니다."를 입력 해줍니다.

    DfRe2Vj.png

     

     

    키보드 입력에서 콘트롤키 속성을 True로 변경하세요. 그러면, 콘트롤키를 누른 상태로 엔터키가 입력됩니다. 참고로, 알트키는 카카오톡 메세지창에 정상적으로 줄바꿈이 되지 않았습니다. 알트+엔터키로 줄바꿈이 된다는 분들도 계신거보면 다른 단축키와 충돌이 있거나 윈도우 버전에 따라서 다른거 같습니다. 둘중에 되는걸로 사용하면 될거 같습니다.

    Xzppihb.png

     

     

    마지막에 메세지를 전송할 키보드 입력 액션을 하나 더 추가하세요. 그리고, 엔터로 설정해줍니다. 매크로를 다시 실행 해볼까요? 정상적으로 입력되지 않았습니다. 첫번째 텍스트가 써지고, 두번째 텍스트가 덮어쓰기해서 마지막 줄만 하나 대화방에 보내졌습니다.

     

     

    일반적으로 윈도우 API는 비동기로 처리됩니다. 윈도우가 다른 프로그램을 처리하느라 바쁜 경우 일부 키가 스킵되는데요. 이런 문제를 해결하기 위해서 SendMessage를 사용합니다. SendMessage는윈도우가 신호를 처리할 때까지 프로그램이 대기합니다. 윈도우 성능이 괜찮다면 문제 없이 쓸 수 있을겁니다. 하지만, 윈도우가 병목 현상이 있거나 느려지는 증상이 있다면 이 방법은 다시 생각해봐야 합니다.

     

     

    마지막으로 키보드 입력 액션을 여러개로 분리해서 사용하는겁니다. 키보드 입력에는 총 4개의 동작이 포함되어 있습니다. 콘트롤키 누름, 엔터 누름, 엔터 때기, 콘트롤키 때기입니다. 이 동작을 직접 컨트롤하려면 아래와 같이 액션을 설정하세요. 콘트롤키를 눌렀다가 땔 키다운 키업과 엔터키를 눌렀다가 때는 키다운 키업이 추가되었습니다.

    iU5WC2T.png

     

     

    윈도우에서 특수키(Ctrl, Alt, Shift, Win)들은 키보드로 직접 입력하는건 아니라서 이 키들은 활성 모드로 동작하게 해도 됩니다. 스크립트에 핸들이 추가되어 있더라도 키보드 입력을 활성 모드로 설정하면 비활성이더라도 활성으로 키보드가 동작합니다. 특수키들은 활성이나 비활성이나 차이가 없습니다. 윈도우에서 키가 눌렸다는 신호와 키보드의 키를 조합해서 처리하기 때문입니다.

     

     

    엔지엠 매크로는 기본적으로 다양한 환경에 적응하기 위해 여러가지 옵션들이 준비되어 있습니다. 그렇다보니 이렇게해도 되고, 저렇게 해도 동작은 합니다. 딱 정해진 루트가 있는게 아니라서 매크로를 제작하다보면 약간(?) 혼란스러울 수 있는데요. 범용적으로 사용하는 소프트웨어인만큼 다양한 사용자 컴퓨팅 환경에서 동작하기 위한 방법입니다. 가급적이면 도움말을 참고하셔서 간단하게 만드는게 가장 좋은방법입니다. "Simple is best!"라는 말이 있듯이 유지보수나 분석을 용이하게 하려면 스크립트를 간단하게 작성하는게 좋습니다.

     

    개발자에게 후원하기

    MGtdv7r.png

     

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

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

    감사합니다~

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

    댓글목록

    등록된 댓글이 없습니다.