본문 바로가기

Programming/C & C++

Reverse Engineering failed. not found machine code

 

OpenGL api 사용시엔 발생하지 않던 문제였으나
Vulkan api를 사용하고 나서부터 어느시점에선가 종종 보이기 시작했다.

초반에는 그냥 컴퓨터 재부팅으로 해결했으나, 어느 순간부턴 재부팅마저도 귀찮아져서 해결하려고 시도했다.

 

Visual studio에서 빌드를 한 상태에서 발생한 문제이기에 확인 버튼을 누르면, 어느 부분에서 문제가 발생했는지 알려주고 있었다
(* 멍청하게도 이 부분을 크게 신경쓰고 있지 않았다)

oCam에서 발생한 문제였고, 오류가 발생한 dll의 이름이 HookSurfaceDLL인것으로 보아,
oCam의 녹화 모드 중 하나인 '게임 녹화'에서 'Focusing 된 Window를 hooking 하는' 용도의 라이브러리(*아닐수도 있다)인데
OpenGL api는 정상 감지하나, Vulkan API는 정상적으로 감지를 못하는 상황으로 보인다.

 

해결방법

근본적인 해결 방법은 마땅히 없고,
Vulkan API를 사용하는 프로그램 (*대표적으로 언리얼)을 실행해야할 때는
1. oCam을 종료 (종료 후 작업관리자에서 oCam background Task 또한 종료 해야함)
2. 녹화 모드를 '게임 녹화'가 아닌 '화면 녹화'
현 시점에서는 이 두 방법이 사실상 '유저가 할 수 있는' 유일한 해결책이라 생각된다.