投稿日 | : 2006/07/05(Wed) 19:31 |
投稿者 | : 魔界の仮面弁士 |
Eメール | : |
URL | : |
タイトル | : Re^4: Visual Basic 5.0 から呼び出し可能なDLLの作成方法 |
> Visual C++で作成したdllがあり、
それは、ActiveX DLL の形式でしょうか。
それとも、関数がエクスポートされるタイプの DLL でしょうか。
前者の場合は、VB5 製の ActiveX DLL の場合と、基本的には一緒です。
後者の場合は、stdcall になっているかを確認しておいてください。
http://www.microsoft.com/japan/msdn/vs_previous/vbasic/docs/dll/
> Visual Basic 5.0 から呼び出す可能な方法を教えていただきたいです。
> 例えば、そのdllはどこに置くべきなど。よろしくお願いします。
ActiveX DLL の場合は、どこにおいても構いませんが、共有タイプではなく、SideBySide で
実行させる場合は、アプリと同じフォルダに配置するのが良いでしょう。
一方、外部関数を持つタイプの DLL の場合、配置先はどこでも良いですが、通常は、
1. exeのあるディレクトリ
2. カレントディレクトリ
3. Windows のシステムディレクトリ
4. Windows ディレクトリ
5. 環境変数 PATH に通されたディレクトリ
などにおきます。(このあたりは、LoadLibrary API が DLL を検索する場合に準じます)
なお、Declare ステートメントではフルパス指定も可能ですので、上記以外のパスも指定できますが、
パスが固定的(変数にはできない)という事情から、上記のパス(特に、1, 3, 4)を使うのが一般的かと。