F.R.I.D.A.Y.

PC 카카오톡 AD 제거 본문

DEV/C C++

PC 카카오톡 AD 제거

F.R.I.D.A.Y. 2021. 6. 25. 04:07
반응형

 이미 시중에 CS로 만들어진 ADBlock 프로그램이 존재하지만


 기억나지 않을 정도로 익숙해져버린 카카오톡 PC AD. 존재하는것은 상관 없지만, 창의 일정 부분을 저렇게 차지하다보니 공간 낭비가 아닐 수 없다.

 

 이미 시중에 C#으로 만들어진 ADBlock 프로그램이 존재하지만, 원리나 한번 알아보자고 만든 코드.

#include <iostream>
#include <iomanip>
#include <Windows.h>

using namespace std;

int main() {
	HWND kakao;
	kakao = FindWindowW(L"EVA_Window_Dblclk", L"카카오톡");
	char titleKao[100]{};
	GetWindowTextA(kakao, titleKao, 99);

	cout << "caption: " << titleKao << endl;

	if (kakao) {
		HWND list = FindWindowExW(kakao, nullptr, L"EVA_Window", nullptr);
		RECT listRc{};
		cout << "list: " << list << endl;

		if (list) {
			GetWindowRect(list, &listRc);
			SendMessage(list, WM_CLOSE, 0, 0);
		}

		HWND mainer = FindWindowExW(kakao, nullptr, L"EVA_ChildWindow", nullptr);
		RECT mainerRc;
		if (mainer) {
			GetWindowRect(mainer, &mainerRc);
			mainerRc.bottom= listRc.bottom;
			GetClientRect(kakao, &mainerRc);
			SetWindowPos(mainer, 0, mainerRc.left, mainerRc.top, mainerRc.right - mainerRc.left,
				mainerRc.bottom - mainerRc.top, SWP_NOMOVE);
			InvalidateRect(mainer, nullptr, false);
		}
	}

	return 0;
}

 콘솔기반이다.

728x90
반응형
Comments