現在、LoadLibrary関数とFreeLibrary関数を使用して、アプリケーションが実行されているシステムにdll(mfplat.dll)が存在するかどうかを確認しています。私の要件は、DLLがシステムに存在するかどうかをチェックすることだけであり、DLLから関数を呼び出す必要はありません。同じことを確認するより速い方法はありますか?DLLがシステムに存在するかどうかを調べる最も良い方法
2
A
答えて
5
LoadLibraryEx()
を使用し、LOAD_LIBRARY_AS_DATAFILE
ビットをdwFlags
引数に設定することができます。 MSDNから
:この値が使用されている場合は、データファイルであるかのように
、システムは呼び出し プロセスの仮想アドレス空間にファイルをマップします。マップされたファイルを実行または実行する準備が完了していない場合は、 は実行されません。
これは、平文LoadLibrary()
と比較して、大幅なスピードアップをもたらすはずです。
+3
スピードアップを超えて、dllでコードを実行するのを避けます。これはおそらくより重要な考慮事項です –
関連する問題
- 1. C#SortedListにキーが存在するかどうかを調べる最良の方法はどれですか?
- 2. Grails/Hibernateで条件が与えられているエンティティがデータベースに存在するかどうかを調べる最も良い方法
- 3. テーブルにtr要素が存在するかどうかを調べる方法
- 4. シェルコマンドがcshellに存在するかどうかを調べる方法
- 5. ブーストグラフに頂点が存在するかどうかを調べる方法は?
- 6. チキンスキームに変数が存在するかどうかを調べる方法は?
- 7. 文字列が別の文字列に存在するかどうかを調べる最も良い方法は何ですか?
- 8. アクションスクリプトにアイテムが存在するかどうかを調べる
- 9. クラスがUIWebViewに存在するかどうかを調べる
- 10. ボタンがJavaに存在するかどうかを調べる
- 11. テーブルにデータベースが存在するかどうかを調べる
- 12. データベースにテーブルが存在するかどうかを調べる
- 13. アイテムがSQL Server CEに存在するかどうかを確認する最も良い方法は?
- 14. 変数がJavascriptに存在するかどうかを確認する最も良い方法は?
- 15. オブジェクトがEntity Frameworkに存在するかどうかを確認する最も良い方法は?
- 16. Pytablesが列が存在するかどうかを調べる
- 17. フォルダが存在するかどうかをPythonが調べる
- 18. SQL Server - クラスタ化インデックスが存在するかどうかを調べる方法
- 19. dbにレコードが存在するかどうかを調べる最速の「GENERIC」方法ですか?
- 20. 行が存在するかどうかを判断する最良の方法
- 21. 要素が別の要素の子孫であるかどうかを調べる最も良い方法
- 22. VimL:機能が存在するかどうかを調べる
- 23. Duplicatesが存在するかどうかを調べるSML NJ
- 24. PDO/PHP - 行が存在するかどうかを調べる
- 25. ファイルが存在するかどうかを調べるJava
- 26. セッションがJavascriptで存在するかどうかを調べる
- 27. arraylistオブジェクトが存在するかどうかを調べる
- 28. data-val-requiredが存在するかどうかを調べる
- 29. 値が存在するかどうかを調べるfirebase
- 30. 文字列がファイルに存在するかどうかを調べる最適な方法
スピードは本当に重要ですか? –
「あなたのシステム上の存在」を定義してください。システム上のどこにいても、dll検索で利用可能ですか?また、なぜあなたはチェックの必要性を感じますか?それが起こったときに、ロード障害に対処してみませんか?とにかくそれをやらなければなりません。なぜ、余分なコードを書くのですか? –