掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
DLLがあるかどうかチェックするには (ID:76895)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
まず、DLLの存在チェックに関してですが、Regular DLLなら、 Declare宣言しておいた関数を呼び出してみて、その時に発生しうる ファイルが見つかりません、というエラーをトラップしては如何でしょう。 同様にActiveX DLLの場合は、NewもしくはCreateObjectしてみて、 オブジェクトを作成できません、というエラーをトラップする、と。 もう一つの質問である、バージョンのチェックですが、これは チェック方法がDLLによって異なるのでなんともいえません。 Comctl32.dll などであれば、DllGetVersion APIで取得することができますし、 UNLHA32.DLLなら、UnlhaGetVersion, UnlhaGetSubVersion APIですね。 もう少し汎用的な判定法としては、ファイルのバージョン情報を利用する事ができます。 こちらは、GetFileVersionInfo APIで取得できますが……DLLによっては、 ファイルバージョンが存在しないDLLもありますので、注意してください。 (バージョン情報の有無は、GetFileVersionInfoSizeで判定できます) なお、ActiveX DLLの場合は、ファイル自体のバージョンよりも、 タイプライブラリのバージョン情報の方が重要だと思いますが、こちらは、 TLBINF32.DLLを参照設定し、そこに含まれる MajorVersion/MinorVersionプロパティで 取得することが可能です。 # 各関数の具体的な使い方は、SDK等で調べて見てください。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.