본문 바로가기
프로그래밍˙알고리즘/C#ㆍXamarin

[C# Windows 프로그래밍] PostMessage로 계좌입출금 확인을 해보자! [1강] (카카오뱅크 입출금 확인하기)

by 승주니 2020. 4. 21.
반응형

안녕하세요

PostMessage로 계좌입출금 확인하는 방법을 알아보겠습니다.

 

시작하기전에 본 프로그램을 제작하기 위해서는 카카오뱅크(계좌), 카카오톡이 필요합니다.

(카카오뱅크 입출금 카카오톡 알림 설정 해놓으셔야 합니다)

 

먼저 클래스 안에 선언을 하나 해주세요.

[DllImport("user32.dll")]
public static extern bool PostMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);

매개 변수 설명▼
Hwnd - 윈도우 핸들값
uMsg - 보낼 매세지 값
lParam,Wparam - 추가 정보값

선언을 하고나면 아래와 같은 오류가 발생할 것입니다.

 

이렇게 오류 뜨는 이유는 Dllimport형식을 사용한다는 구문을 추가를 해주지 않았기 때문입니다.

 

using System.Runtime.InteropServices;

맨 위에 추가해주세요.

 

도구 - Spy++를 실행 시켜줍니다.

 

Spy++ 라는 프로그램이 실행되었습니다.

Spy++는 Windows의 속성과 어떤 Windows Class를 사용하고, 내부적인 메시지를 확인해주는 프로그램입니다.

Windows 분석 프로그램이라고 생각하면 쉬워요.

 

이제 입출금을 확인할 카카오뱅크 계좌로 입금을 하시고 카카오톡 알림을 받으세요.

 

이런식으로 알림까지 받아놓은 상태에서 대기해주세요.

 

 

Spy++를 킨 상태에서 Ctrl + F를 누르면 [창 찾기] 라는 창이 뜨는데,

 

체크한 부분을 카카오톡 메세지 (카카오뱅크)에 Drag&Drop 해주세요.

 

이렇게 핸들, 캡션, 클래스 등 속성값들을 알 수 있습니다.

 

여기서 표시에서 메시지(M)을 체크해주시고 확인을 눌러주세요.

 

새로뜬 캡션명이 Messages ( Windows 0033059A )

카카오톡 (카카오뱅크 메시지창) 캡션 값은 "0033059A" 입니다.

 

이제 PostMessage 코드를 소개하겠습니다.

설명을 쉽게하기 위해 같은 코드를 반복적으로 사용하는 것에 대해 양해 해주세요.

 

PostMessage(handle, msg, wParam, lParam);

handle : 핸들 값

msg : 보낼 메시지

wParam, lParam : 추가 메시지 (정보 값)

 

일단 핸들값이 나왔으므로 handle에 0033059A 추가해줍니다.

 

PostMessage(0033059A, msg, wParam, lParam);

 

다음으로 msg에 들어가야 할값입니다.

 

WM_LBUTTONDOWN = 0x0201;

WM_LBUTTONUP = 0x0202;

WM_LBUTTONDBLCLK = 0x0203;

WM_RBUTTONDOWN = 0x0204;

WM_RBUTTONUP = 0x0205;

WM_RBUTTONDBLCLK = 0x0206;

WM_MOUSEMOVE = 0x0200;

마우스 좌클릭을 하려면 0x0201, 0x0202 두 Msg값이 들어가는 것입니다.

이해가 되시나요?

 

PostMessage(0033059A, 0x0201, wParam, lParam);
PostMessage(0033059A, 0x0202, wParam, lParam);

이렇게 두개를 추가해주시면 마우스 좌클릭 1회가 되겠습니다.

 

 

 

글이 너무길어져 2강에 이어서 마치겠습니다^^

 

 

 

 

반응형

댓글