안녕하세요~ 킴영감 입니다~


EKMLib 2017년 12월 19일 업데이트 버전 배포합니다.


다양한 기능들이 추가되었으니 이전 버전을 사용하고 계시는 분들은 꼭 업데이트 하시기 바랍니다~


★업데이트 방법★


본인이 사용하는 윈도우 버전 및 설치된 오토핫키의 비트를 확인한 뒤 본인의 시스템에 맞는 압축파일을 다운받으신 뒤 EKMLib.ahk, EKMLib.dll파일을 기존의 파일과 바꿔주시면 됩니다.


2.1.3버전부터 파일이름이 EKMLib 하나로 통일되었으니 착오없으시기 바랍니다. 

(기존에 64비트버전 사용하시던 분들은 #include EKMLib_x64.ahk를 #include EKMLib.ahk로 변경하셔야 합니다.)


기본 사용방법 강의https://youtu.be/qskrz1euJsY



그동안 FunLecture 홈페이지를 통해 사용하시던 분들은 인증방식이 바뀌었으니 확인하시기 바랍니다.


이전 글에서 설명드렸듯이 EKMLib는 비활성 매크로를 만들기 위해 필요한 기능들을 구현해놓은 라이브러리 입니다.



EKMLib에 미리 만들어져 있는 함수들을 사용방법에 맞게 사용하시면 됩니다.
(아직 함수를 모르시는분은 함수 강의를 보고 오시기 바랍니다.)


함수 강의 링크 - https://youtu.be/wCM0iPlDMNI


다운받으시기전에 본인 컴퓨터에 설치된 오토핫키가 몇비트인지 확인하시고 


확인 방법 링크- http://elderlykims.tistory.com/56


설치된 비트에 맞는 파일을 다운받으신 뒤 32비트의 경우 EKMLib.ahk, EKMLib.dll 파일을 64비트의 경우 EKMLib_x64.ahk, EKMLib_x64.dll 파일을 스크립트가 있는 폴더에 넣으시면 바로 사용하실 수 있습니다.


새로운 스크립트를 만드실 때 편하시도록 baseScript.ahk 파일을 만들어서 함께 넣어놓았으며 baseScript.ahk 작성되어 있는 내용이 반드시 적혀있어야 라이브러리를 사용할 수 있습니다.


추가적으로 실행중인 프로그램 리스트를 받아와서 ListView에 표시하는 예제 스크립트(ListView_example.ahk)와 


자식윈도우의 핸들을 검색하고 비활성클릭 입력이 가능한 창을 찾는 테스트 스크립트(ChildHWND_TestTool.ahk)도 함께 넣어놨습니다~


EKMLib의 자세한 사용방법은 블로그와 유튜브 채널을 통해 알려드리겠습니다.



1. EKMLib Ver.2.1.4 다운로드


Windows 7 버전


32비트 버전 - 



64비트 버전 - 



Windows 10 버전


32비트 버전 - 



64비트 버전 - 


주의사항 : 배포는 http://elderlykims.tistory.com을 통해서만 이루어지며 무단 재배포 및 수정배포를 금지합니다. 저작물의 모든 권리는 킴영감에게 있습니다.


2. EKMLib사용시 유의사항


반드시 기초강좌의 내용을 완벽하게 이해하시기 바랍니다.


운영체제 버전별로 사용가능프로그램과 조건이 다르기 때문에 확인 후 사용하시기 바랍니다. 

사용가능 프로그램 링크 - http://elderlykims.tistory.com/58


한 IP에서 2개 이상을 쓰신다면 EKMLib_Shotdown()은 실행하지 마시기 바랍니다.


또한, 사용하시기 전에 EKMLib 각 함수들의 사용방법도 완벽히 이해하셔야 사용가능합니다.

EKMLib 라이브러리를 사용하기 위해서는 설치된 오토핫키와 동일한 비트(bit)의 EKMLib를 사용하셔야 합니다.

32bit - EKMLib, 64bit - EKMLib_x64

비활성 이미지서치 함수를 사용하실 때 이미지를 24비트 bmp 파일로 만드셔야 합니다.

비활성 이미지 서치 기능을 사용하기 위해서는 바탕화면의 개인설정을 반드시 Aero 테마로 설정하셔야 합니다.



3. 인증방법


EKMLib 인증을 위해 ID와 PASSWORD를 입력하셔야 하며 아래와 같습니다.


ID : guest

PASSWORD : goodluck


위 ID와 PASSWORD를 아래 그림에 표시된 baseScript의 ID와 PASSWORD를 입력하는 부분에 작성하시면 됩니다.



인증은 한 IP당 하나로 제한되어 있으며 중복 인증이 불가능합니다.

17.12.10. 변경

중복 로그인 가능하도록 변경되었습니다.



2.1.4 버전업데이트 내용 (2017.12.30.)


인터넷 연결이 끊겼을 때 바로 팅기는 현상 완화



2.1.3 버전업데이트 내용 (2017.12.19.)


윈도우 10버전 추가 (기존 버전이 윈도우 7 에서만 동작해 윈도우 10버전을 추가 배포합니다.)

전체화면일 때 최소화 상태로 인식하는 문제 수정



2.1.2 버전업데이트 내용 (2017.12.17.)


픽셀서치 오류 수정



2.1.1 버전에 추가된 기능


라이브러리를 로딩할 때 최신버전을 확인하는 기능을 추가했습니다.



4. 함수 설명


EKMLib Ver.2.1.0에 구현되어있는 함수 및 기능은 아래와 같습니다.


파란색으로 표시된 부분이 함수 사용방법이며 사용되는 변수에 대한 설명을 적어 놓았습니다. 함수의 사용방법과 변수에 알맞은 값을 넣으시면 됩니다.



2.1.0 버전에 추가된 함수


  • EKMLib_clickDown(x, y, _hWnd) - 비활성 마우스 왼쪽 클릭 다운 함수. 
    변수 설명
         x - 클릭할 지점의 x 좌표
         y - 클릭할 지점의 y 좌표
         _hWnd - EKMLib_findHWND로 얻어온 윈도우 핸들


  • EKMLib_clickUp(x, y, _hWnd) - 비활성 마우스 왼쪽 클릭 업 함수. 
    변수 설명
         x - 클릭할 지점의 x 좌표
         y - 클릭할 지점의 y 좌표
         _hWnd - EKMLib_findHWND로 얻어온 윈도우 핸들


  • EKMLib_keyInput(wParam, lParam, _hWnd) - 비활성 키보드 입력 함수.
    변수 설명
         wParam - 입력할 키의 wParam
         lParam - 입력할 키의 lParam
         _hWnd - EKMLib_findHWND로 얻어온 윈도우 핸들


입력할 키의 wParamlParam은 자작프로그램에 있는 Parameter Spy로 확인 가능합니다.

링크 - http://elderlykims.tistory.com/60



  • EKMLib_keyDown(wParam, lParam, _hWnd) - 비활성 키보드 다운 함수.
    변수 설명
         wParam - 입력할 키의 wParam
         lParam - 입력할 키의 lParam
         _hWnd - EKMLib_findHWND로 얻어온 윈도우 핸들


  • EKMLib_keyUp(wParam, lParam, _hWnd) - 비활성 키보드 업 함수.
    변수 설명
         wParam - 입력할 키의 wParam
         lParam - 입력할 키의 lParam
         _hWnd - EKMLib_findHWND로 얻어온 윈도우 핸들


  • EKMLib_sendText(myStr, _hWnd) - 비활성 문자열 입력 함수 (텍스트 입력)
    변수 설명
         myStr - 입력할 문자열 (예. "안녕하세요~")
         _hWnd - EKMLib_findHWND로 얻어온 윈도우 핸들

    채팅, 검색 등을 위해 문자열을 입력할 때 사용할 수 있으며, 반드시 텍스트 입력창에 커서가 깜빡이는 상태에서 사용하셔야 합니다.


  • error := EKMLib_inactivePixelSearch(OutX, OutY, x1, y1, x2, y2, RGB_value, _hWnd, acc) - 비활성 픽셀서치 함수. (최소화 상태에서는 동작하지 않습니다.)
    변수 설명
        error - 0: 픽셀을 찾음, -1: 픽셀을 못찾음
        OutX - 찾은 픽셀의 x좌표를 저장하는 변수
        OutY - 찾은 픽셀의 y좌표를 저장하는 변수
        x1 - 픽셀을 찾을 영역의 왼쪽 상단 x좌표
        y1 - 픽셀을 찾을 영역의 왼쪽 상단 y좌표
        x2 - 픽셀을 찾을 영역의 오른쪽 하단 x좌표
        y2 - 픽셀을 찾을 영역의 오른쪽 하단 y좌표
        RGB_value - 찾을 픽셀의 RGB 값
        _hWnd - EKMLib_findHWND로 얻어온 윈도우 핸들
       acc - 픽셀 값 정확도. 0 ~ 50 사이의 값을 입력. 권장 값: 0   

픽셀 값은 자작프로그램에 있는 픽셀값 찾기 프로그램으로 확인가능합니다.


2.0.0 버전의 수정된 함수

  • EKMLib_inactiveMouseDrag(s_x, s_y, e_x, e_y, step, num, _hWnd) - 비활성 마우스 드래그 함수
    변수 설명
         s_x - 드래그 시작 지점의 x 좌표
         s_y - 드래그 시작 지점의 y 좌표
         e_x - 드래그 끝 지점의 x좌표
         e_y - 드래그 끝 지점의 y좌표
         step - 드래그 시 마우스가 움직이는 간격 (1 이상의 값을 입력하셔야 합니다.)
         num - 드래그 횟수
         _hWnd - EKMLib_findHWND로 얻어온 윈도우 핸들

Step 변수가 추가되었으며, 함수의 오류 수정 및 드래그 성능이 개선되었습니다.


기존 함수

  • EKMLib_Start(user_id, user_pw) - EKMLib를 사용할 수 있도록 환경을 설정합니다. 
    변수 설명
         user_id - EKMLib를 사용하기위한 사용자 ID 입니다.
         user_pw - EKMLib를 사용하기위한 사용자 PASSWORD 입니다.


  • error := EKMLib_findHWND(winTitle, _hWnd) - 윈도우의 핸들을 얻어오는 함수. 핸들은 비활성 함수들에 사용됩니다.
    변수 설명
         winTitle - 핸들을 얻어오려는 윈도우의 이름을 입력합니다.
        _hWnd - EKMLib_findHWND로 얻어온 윈도우 핸들.


  • error := EKMLib_findChildHWND(_hWnd, index) - 윈도우의 자식 윈도우의 핸들을 검색합니다.
    변수 설명
         error - 0 : 핸들 찾음, -1 : 핸들 못찾음
         _hWnd - EKMLib_findHWND를 통해 얻어온 핸들을 입력합니다.
         num - 자식 윈도우의 핸들 개수를 받아옵니다.


  • error := EKMLib_getChildHWND(_hWnd, index) - 검색된 윈도우 핸들 중 index(숫자) 번째에 해당하는 자식창의 핸들을 얻어옵니다.
    변수 설명
          error - 0 : 핸들 찾음, -1 : 핸들 못찾음
         _hWnd - 함수를 통해 얻어온 자식 윈도우의 핸들값이 저장됩니다.
         index - 검색된 자식윈도우의 핸들 중 몇번째 핸들을 받아올지에 대한 숫자를 입력합니다.


  • EKMLib_click(x, y, _hWnd) - 비활성 마우스 클릭 함수. 
    변수 설명
         x - 클릭할 지점의 x 좌표
         y - 클릭할 지점의 y 좌표
         _hWnd - EKMLib_findHWND로 얻어온 윈도우 핸들

  • error := EKMLib_inactiveImageSearchAndClick(loc, image, x, y, _hWnd, acc, click_flag) - 비활성 이미지서치 및 클릭 함수. (최소화 상태에서는 동작하지 않습니다.)
    변수 설명
        error - 0: 이미지를 찾음, -1: 이미지를 못찾음
        loc - 이미지가 있는 폴더 명. 라이브러리 파일이 있는 경로의 아래경로
        image - 이미지 파일명 (확장자 제외)
        x - 찾을 이미지의 왼쪽 상단 x 좌표 (이미지 찾아드립니다 프로그램으로 확인가능합니다.)
        y - 찾을 이미지의 왼쪽 상단 y 좌표 (이미지 찾아드립니다 프로그램으로 확인가능합니다.)
        _hWnd - EKMLib_findHWND로 얻어온 윈도우 핸들
       acc - 이미지 인식 정확도. 1 ~ 0.5 사이의 값을 입력. 권장 값: 0.95
       click_flag - 이미지를 찾았을때 클릭을 할지/안할지 를 결정. 0: 클릭 안함, 1: 클릭 함


비활성 이미지서치 함수를 사용하실 때 이미지를 24비트 bmp 파일로 만드셔야 합니다.


  • error := EKMLib_inactiveImageSearchAndClickA(loc, image, x1, y1, x2, y2, _hWnd, acc, click_flag) - 범위 지정이 가능한 비활성 이미지서치 및 클릭 함수. (최소화 상태에서는 동작하지 않습니다.)
    변수 설명
       error - 0: 이미지를 찾음, -1: 이미지를 못찾음
       loc - 이미지가 있는 폴더 명. 라이브러리 파일이 있는 경로의 아래경로
       image - 이미지 파일명 (확장자 제외)
       x1 - 이미지를 찾을 영역의 왼쪽 상단 x 좌표
       y1 - 이미지를 찾을 영역의 왼쪽 상단 y 좌표
       x2 - 이미지를 찾을 영역의 오른쪽 하단 x 좌표
       y2 - 이미지를 찾을 영역의 오른쪽 하단 y 좌표
       _hWnd - EKMLib_findHWND로 얻어온 윈도우 핸들
       acc - 이미지 인식 정확도. 1 ~ 0.5 사이의 값을 입력. 권장 값: 0.95
       click_flag - 이미지를 찾았을때 클릭을 할지/안할지 를 결정. 0: 클릭 안함, 1: 클릭 함


  • error := EKMLib_inactiveImageSearch(loc, image, x1, y1, x2, y2, _hWnd, acc) - 비활성으로 찾은 이미지의 좌표를 반환하는 함수
    변수 설명
       error - 0: 이미지를 찾음, -1: 이미지를 못찾음
       loc - 이미지가 있는 폴더 명. 라이브러리 파일이 있는 경로의 아래경로
       image - 이미지 파일명 (확장자 제외)
       x1 - 찾은 이미지의 왼쪽 상단 x 좌표
       y1 - 찾은 이미지의 왼쪽 상단 y 좌표
       x2 - 찾은 이미지의 오른쪽 하단 x 좌표
       y2 - 찾은 이미지의 오른쪽 하단 y 좌표
       _hWnd - EKMLib_findHWND로 얻어온 윈도우 핸들
       acc - 이미지 인식 정확도. 1 ~ 0.5 사이의 값을 입력. 권장 값: 0.95

x1, y1, x2, y2를 오토핫키의 ImageSearch에서 FoundX, FoundY와 똑같은 방법으로 사용하시면 됩니다.


  • EKMLib_hideWindow(_hWnd) - 윈도우를 숨김/원위치 시키는 함수. 윈도우를 모니터 밖으로 이동시켜서 숨길 수 있습니다.
    변수 설명
       _hWnd - EKMLib_findHWND로 얻어온 윈도우 핸들

  • EKMLib_setWinList() - 실행중인 윈도우를 검색합니다. 검색 후, getWinList를 사용해서 윈도우 이름을 받아올 수 있습니다.


  • title := EKMLib_getWinList(index) - 실행중인 윈도우의 이름을 받아옵니다.
    해당 인덱스에 해당하는 하나의 값만 받아오며, Loop를 사용해서 모두 받아오시면 됩니다.
    변수 설명
        index - 검색된 윈도우 중 받아올 index값


  • EKMLib_Shutdown() - EKMLib 를 종료합니다. 종료하실 때 반드시 실행하셔야 합니다.

위에 나열된 함수들이 모두 EKMLib에 구현되어 있습니다.


간단한 사용법에 대한 강좌를 올리려고 했는데 이 글을 적는데 너무 오래 걸려서 쪼~금 미뤄야 겠네요.ㅠ

함수 강의를 보신 분들은 쉽게 접근하실 수 있으실 거구요~ 

감이 안오시는 분들은 위에 있는 함수 강의 링크 타고 가셔서 공부하시기 바랍니다~

감사합니다.


주의사항 : 배포는 http://elderlykims.tistory.com을 통해서만 이루어지며 무단 재배포 및 수정배포를 금지합니다. 저작물의 모든 권리는 킴영감에게 있습니다.


블로그 이미지

킴영감

프로그래밍과 게임공략, 게임과 관련된 프로그램에 대한 내용을 다룹니다.