[완료]C언어로 현재 등록된 모듈 리스트 얻어올수 있는 방법은?

seungrye의 이미지

스크립트로는 어떻게하면 된다고(;;)는 알고 있습니다만...

반드시 C로 해야 해서 그렇습니다.

system(script).. 이러시면 곤란..^^;

임종규의 이미지

EnumProcessModules 함수를 찾아보세요.

/* How to Love Others */
while(GetDepth(Love) < Enough) DoLove();

/* How to Love Others */
while(GetDepth(Love) < Enough) DoLove();

seungrye의 이미지

아쉽게도 리눅스 환경이라서...T^T

bacon의 이미지

간단하게 하려면 환경변수 LD_TRACE_LOADED_OBJECTS를 1로 설정하고 원하는 실행파일을 수행하면 로드된 OBJECTS가 출력됩니다.

setenv ("LD_TRACE_LOADED_OBJECTS", "1", 1);
system ("ls");

위와 같이 하면 ls가 로드하는 OBJECT들이 출력되므로 system대신에 fork/exec/pipe를 사용하거나 popen같은걸로 stdout을 읽으면 되겠죠.

그게 싫으면 ELF파일을 읽어서 정보를 뽑아내면 됩니다.

seungrye의 이미지

제목 그대로..^^;

bushi의 이미지

스크립트로는 어떻게 하시는데요 ?

OTL

owlet의 이미지

/proc/modules 파일을 읽어보세요.