ランタイムリンク用にいくつかのWinApiを使用Loadlibrary
してリンクしました。Getprocaddress
期待どおり、正常に動作します。
しかし、一部のApiでは-ldllname
、コンパイラオプションとして使用しました。同じオプションを使用すると、一部のAPIでリンカーエラーが発生し、dllをロードする必要があります。
これに特別な違いはありますか?つまり、特定のAPIにはランタイムリンクが必要であり、他のAPIは-ldllname
オプションで動作しますか?これらの種類のAPIを分類する方法は?
更新:私が観察したのは、UNICODEとANSIをサポートするAPIです。つまり、「W」と「A」の接尾辞が付いたAPIは、静的リンク自体で解決されますか?私は正しいですか?私が間違っている場合は私を訂正してください!
一部のAPIがランタイムリンクを必要とし、他のAPIが静的リンク自体(-lオプション)で解決されるのはなぜですか?これには何か理由がありますか?