배치 파일에선 실패하고 직접 실행하면 성공하는 프로그램의 비밀
Key Point
배치 파일과 직접 실행의 동작 차이는 실행 컨텍스트(작업 디렉토리, 환경변수)가 다르기 때문인데, 이 글은 절대 경로 대신 실행 파일 위치 기반의 동적 경로 해석으로 환경에 상관없이 일관되게 작동하게 하는 실전 기법을 보여준다.
핵심 요약
- Windows 환경에서 배치 파일로 실행할 때와 직접 클릭했을 때 프로그램 동작이 달라지는 문제의 원인과 해결책을 다룬다.
- 현재 실행 파일 경로를 GetModuleFileNameA로 확인해 애플리케이션이 자신의 실행 환경을 파악하도록 설계하는 방법을 제시한다.
- 설정과 자산 파일의 경로를 실행 파일이 위치한 디렉토리 기준으로 상대 경로로 지정하고, 배치 파일이든 직접 실행이든 일관되게 찾을 수 있도록 한다.