프로젝트/자가 보호
자가 보호(3) - DeviceIO 개발
드라이버와 통신하는 부분을 개발한다. 아직 지식이 없어, 자세한 내용을 기입하지 못한다. 리서치를 통해 해당 게시글을 수정한다.
자가 보호(2) - Driver Load, Unload
- Drivr Load, Unload 하는 Function을 만들 것이다. - 잘 쓰기 쉽게, 잘못 쓰기 어렵게 참고자료 (https://docs.microsoft.com/en-us/windows/win32/api/winsvc/nf-winsvc-createservicea) 필요한 기능 4가지 - Driver Load - Driver Unload - Driver Start - Driver Stop 4가지 기능을 제작할 것이다. - 첫 번째는 동작만 하기 위해 개발 - 두 번째는 첫 번째보다 필요없는 변수 제거 - 세 번째는 Logic에서 필요없는 부분 제거 꼭 세 번을 개발하지 않을 수도 있다. 조금 더, 개발 스킬보다는 개발 기본에 충실하고 싶다. 위에 MSDN을 참고해, 그대로 코드를 가져왔다. 기존에..
자가 보호(1) - 프로젝트를 시작하기 전에
프로젝트를 진행하면서 블로그에서 진행을 한다. 자가 보호 프로젝트는 목표 프로세스, 파일, 레지스트리의 종료, 변경, 제거 등으로부터 보호하는 프로젝트. 해당 프로젝트를 진행하면서, 현업에서 배우는 코딩 컨벤션 및 논리적인 사고력 등 여러가지 본인에게 부족한 것을 향상 시키는 것에 집중한다. 1. 필요한 모듈은 개발한다. - 오픈소스가 충분하나, 모듈과 모듈끼리 서로 얽히지 않게 개발하는 능력이 매우 부족하다. 2. 주석 처리 및 코딩 컨벤션에 집중한다. - 코딩 규약은 최소한의 성의라고 생각한다. 3. Modern C++ 지향한다. - Modern이라고 붙이기에는 애매하지만, C++11 이상에서 개발된 키워드를 사용한다. 4. 최소 2번 이상 지웠다가 새롭게 짠다. - 결과만 나오는 코딩은 어울리지 않..