만들려는 건 아니고 운영체제 공부하는데 궁금해져서
게임이라는 하나의 프로세스와
매크로라는 하나의 프로세스가 동시에 실행 될 때
매크로 프로세스에서 실행한 명령으로
게임 프로세스의 이벤트 발생이나 상태 변화를 일으킬 수 있어??
IPC를 사용하는 건가?
IPC의 방법이 여러가지라는 것은 알지만 세부적인 내용은 모르는데
저게 운영체제가 허용해주는 거야??
어차피 온라인 게임이라고 하더라도
클라이언트 프로그램과
매크로 프로그램은
같은 운영체제 위에서 실행되는 거니까
클라이언트 운영체제의 설정만 너그럽게(?) 바꾸면
쉽게 가능한건가??
그리고 만약에 게임회사에서는 매크로를 막기 위한 코드를 넣었을텐데
예를 들면 하드웨어에서 직접 발생시킨 이벤트(인터럽트?)가 아니면
게임상의 입력으로 인정하지 않도록 한다든지
그런 경우에도 뚫리는 이유는 뭘까
솔직히 내 짧은 지식으로
그냥 알고 있는 범위에서 추론해 본건데
잘못 알고 있는 부분이나
관련된 설명 좀 부탁할게요
키보드 후킹해서 키 이벤트를 발생시키는데, 누가 더 상위 레벨에서 후킹하느냐에 따라 승부가 갈림 가장 위로는 usb 꼽아서 이벤트 발생시키는 오토프로그램들.. 직접 입력하는거랑 마찬가지니까
자기가 USB를 어떻게 만들어서 거기서 조종하는사람도있더라 사실상 키보드랑 동급이라 구별불가...
노가다
인간이 입력 불가능한 형태의 커맨드를 입력하면 감지하지.. 내가 하던 겜도 필살기 커맨드 자동으로 써주는 매크로 있었는데 그거 쓰는넘들 다차단당함
r// 상위레벨에서의 후킹이라는 게 하드웨어에 가까운 걸 말하는 거? 그럼 더 로우레벨 아닌가요?
그러면 게임 처럼 금지시키는 게 아니라 일반 소프트웨어(메모장 같은 에디터나 브라우저)는 쉽게 후킹 가능해요?
일반 소프트웨어는 com이라는거로 꼴리는대로 아무언어로든지 프로그래밍해서 지들꺼 자동화 하라고 길을 열어놓아주는 경우도 많음 ㅇㅇ
메모장은 쉬워요.. 메모장 키고 메모장 이름바꾸고 글쓰고 별거 다할수 있음
그럼 일반 소프트웨어의 후킹은 api나 시스템콜 수준에서 가능 한건가요?
키보드머시껭같은거로 막아놓질 않는데.. 당연히 되지.. 근데 보통 그냥 니들 꼴리는대로 만들어서 쓰라고 확장기능을 위한 스크립트나 sdk, com같은걸 제공
r님과 다른 분들 감사, 윈도우랑 리눅스 api는 이제 막 공부 시작하는 단계라 하다보면 감이 올것 같네요