본문 바로가기

Development

(128)
API Hooking reversecore.com/54 API Hooking - 리버싱의 '꽃' API Hooking 에 대한 강좌입니다. User 에서 API Hooking의 다양한 기법들에 대해서 자세히 설명하도록 하겠습니다. 후킹 (Hooking) 리버싱에서 후킹은 정보를 가로채고, 실행 흐름을 변경하고, 원래와는 reversecore.com
[C++] _MSC_VER 가끔씩 오픈 소스등을 사용하다보면, 소스 내에서 _MSC_VER 이라는 상수를 본 적이 있을겁니다. 이 _MSC_VER의 이름으로 유추해보면 MS C++의 버전 정보라는 것을 알 수가 있습니다. _MSC_VER는 MS Visual C++의 컴파일러의 자체 매크로 상수입니다. 특별히 개발자가 따로 지정하지 않더라도, 컴파일러 내부에 정의되어 있는 상수입니다. 이 매크로 값을 이용해서 Visual C++의 버전에 따라 자동으로 분기되는 소스 코드를 작성할 수 있습니다. 다음은 오픈소스인 TinyXML의 소스 일부입니다. view source print? 01.// Microsoft compiler security 02.FILE* TiXmlFOpen(const char* filename, const char*..
Dword 란? 메모리에서 CPU까지 전송되는 단위. win32 api를 다루다보면 종종 WORD나 DWORD 자료형이 보입니다. 정의가 되어있는 헤더파일로 가보면 WORD는 unsigned short로, DWORD는 unsigned long으로 typedef 되어있습니다. 그냥 unsigned short를 사용하면 되는데 굳이 자료 재정의를 하여 WORD로 사용하는 이유가 있을까요? Q. win32 API 자료형 WORD의 유래 운영체제는 하드웨어의 성능을 최대한 활용하기 위한 방향으로 설계됩니다. 따라서 운영체제 개발자들은 탑재시킬 하드웨어에 맞춰 개발을 진행해야만 합니다. 초기 윈도우 개발자들은 16bit가 전송 단위인 CPU를 두고 API를 작성했을 것입니다. 그리고 그 단위에 WORD라는 이름의 자료형을 정의했..
BlueprintImplementableEvent BlueprintImplementableEvent Programming/UNREAL 설정 오늘은 BlueprintImplementableEvent에 대해서 공부해보도록 하겠다. 일단 이 위키의 글을 참고한다. https://wiki.unrealengine.com/Blueprints,_Empower_Your_Entire_Team_With_BlueprintImplementableEvent#Tick_Function C++ 시스템에서 중요한 이벤트를 Blueprint로 발생시키기위해서는 어떻게 해야할까? 굳이 Blueprint에서 C++ function 을 호출하지 않아도된다. 단지, Run-TIme 이벤트에 기초해서, 자발적으로 Blueprint Graph로 정보를 쏴줄 수 있다. 이것이 BlueprintIm..
제대로 따라가기 (5) C++ 프로그래밍 튜토리얼 :: UMG와 유저 인터페이스 작성버전 :: 4.21.0 언리얼 엔진 튜토리얼인 UMG와 유저 인터페이스에서는 언리얼 모션 그래픽(UMG)을 사용해서 여러가지 화면과 버튼이 있는 기본적인 메뉴 시스템을 만드는 법을 배울 수 있다. 튜토리얼대로 하면 문제가 발생해서 제대로 따라갈 수 없는 부분으로 동작이 가능하게 수정해야하는 부분은 빨간 블럭으로 표시되어 있다. 이번 튜토리얼에서 새로 배우게 되는 내용은 글 제일 끝에 "이번 섹션에서 배운 것"에 정리된다. 1. UMG용 모듈 종속성 구성(문서) C++탭에서 기본 코드를 선택하고 "HowTo_UMG"라는 이름으로 프로젝트를 새로 생성한다. 언리얼 모션 그래픽(UMG)을 사용하는 코드를 작성할 것이기 때문에 비주얼 스튜디오(Visual Studio)에 들어가서 기본으로 포함되어 있지 않은..
Signed vs Unsigned themangs.tistory.com/entry/Signed%EC%99%80-Unsigned%EC%9D%98-%EC%B0%A8%EC%9D%B4 Signed와 Unsigned의 차이. 자바나, C나, C++이나, 자바스크립트나, 어디서든 내가 공부할때마다 종종 나오는게 signed, unsigned라는 키워드였다. 늘 글을 볼때마다 대충 이해하고 넘어갔는데 다른 공부하다가 또 나오면 막상 themangs.tistory.com
"ModuleManager.h" 파일을 찾을 수 없습니다. #include "ModuleManager.h"를 했는데 "ModuleManager.h" 파일을 찾을 수 없습니다. 라고 나오는 경우 #include "Modules/ModuleManager.h" 로 바꿔주면 됨. 하.... 언리얼은 항상 버전 업데이트 할 때마다 이런게 생긴다니까... docs.unrealengine.com/en-US/API/Runtime/Core/Modules/FModuleManager/index.html FModuleManager Implements the module manager. docs.unrealengine.com
Linking Static Libraries Using The Build System Home Linking Static Libraries Using The Build System Contents 1 Overview 1.1 Scope & Notes 2 Visual Studio 2013/2015 - Library Configuration 2.1 Creating the project 2.2 Updating another Project 2.3 Customizations for Targeting UE4 Modules 2.3.1 Targeting 64 bit platforms 2.3.2 Multi Threaded DLL 2.4 Third Party Directory 3 UE4 - Build System 3.1 Extending the Base ModuleRules class 3.2 Loading ..