[질문] dll 내에서 자신이 로드된 현재 디렉토리 찾아내기.
글쓴이: bizzare / 작성시간: 월, 2006/02/20 - 2:53오후
어떤 dll 또는 so 파일이 로드되었을 때,
그 자신 내에서
자신이 지금 어느 디렉토리에 있는지 확인하고 싶습니다.
그런걸 알아내는 함수가 있는지요. -_-;
즉,
/home/bin/A.so 가 로드되었다면
A.so가 로드되는 순간
/home/bin/ 을 알아내서 찍고 싶고
/home/A.so 가 로드되었다면
A.so가 로드되는 순간
/home/ 을 알아내서 찍고 싶습니다.
지금 로드가 되는 순서를 정확히 모르겠네요.
Forums:
Windows면 GetModuleFileName()Linux면 L
Windows면 GetModuleFileName()
Linux면 LD_LIBRARY_PATH하고 Current Directory를 뒤져야 할 것 같군요.
일반적으로 그런 패쓰를 알아야 되는 설계는 좋지 않습니다.
설정이라면,
Windows는 Registry에
*IX면 /etc/xxx 또는 /home/xxx에 하세요.
Windows이면 GetModuleFileName이구요,목적이 여
Windows이면 GetModuleFileName이구요,
목적이 여기저기 옮길 수 있는 바이너리(relocatable binary)를 만드시는 거라면 간단하지는 않은데, Autopackage 프로젝트에서 이미 만들어놓은 BinReloc 라이브러리를 사용하실 수 있습니다.
http://autopackage.org/docs/binreloc/
--feanor
댓글 달기