0

LoadLibrary()DllMain [ソース]から呼び出すのは安全ではないことを読みました。

しかし、コンソールアプリケーションのエントリポイントから呼び出すのは安全main()ですか?これに関する情報が見つからないようです。

ありがとう!

4

2 に答える 2

2

はい、安全です。LoadLibraryから電話をかけることができなかった場合main、コンソールプロセスのどこからでも電話をかけることができませんでした。

DllMain「ローダーロック」は呼び出し中に保持され、プロセスが完全に初期化される前に(静的にリンクされたDLLの場合)呼び出されるため、特別です。

于 2012-04-16T15:24:53.823 に答える
1

あなた自身のリンクから:

エントリポイント関数は、単純な初期化または終了タスクのみを実行する必要があります。LoadLibraryまたはLoadLibraryEx関数(またはこれらの関数を呼び出す関数)を呼び出さないでください。これにより、DLLのロード順序に依存関係ループが作成される可能性があります

コンソールアプリケーションはDLLローディングチェーンの一部ではないため、安全です

于 2012-04-16T15:34:56.117 に答える