1

Windowsアプリケーションを作成するとき、次を使用して、現在のプロセスに特定のdllがロードされているかどうかを確認できます。

GetModuleHandle(TEXT("Dll Name"));

UNIXシステムで同じ機能を取得するにはどうすればよいですか?つまり、現在のプロセスが(動的に)ロードした共有オブジェクトに関する情報を取得できる一般的なシステムコールはありますか?

4

1 に答える 1

4

で探してdlopenくださいRLTD_NOLOAD

RTLD_NOLOAD(glibc 2.2以降)

これはライブラリをロードしません。これを使用して、ライブラリがすでに常駐しているかどうかをテストできます(常駐していない場合はdlopen()戻り、常駐NULLしている場合はライブラリのハンドル)。

于 2012-12-31T13:46:20.397 に答える