tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトルいまさらですが、自作DLLの動的な参照について
記事No11778
投稿日: 2008/03/14(Fri) 23:38
投稿者Take’N
いまさらですが、わけあってVB6(sp6 OS:WinXP-sp2)で開発しています。
EXEファイルとDLLファイルを自作しているのですが、
自作DLLの動的な参照設定の方法が分からず、途方に暮れています。

Reference を使えばできると考えたのですが(Access2000 VBAで確認済み)、
そのままコードを移植してもコンパイルすら通りませんでした。

何か根本的に間違えているのか、あるいはVB6の仕様等の理由で不可なのか
ご教授頂けないでしょうか?

[ツリー表示へ]
タイトルRe: いまさらですが、自作DLLの動的な参照について
記事No11780
投稿日: 2008/03/15(Sat) 09:40
投稿者K.J.K.
# 「動的」の意味を取り違えている可能性もありますが、一応記述。

> いまさらですが、わけあってVB6(sp6 OS:WinXP-sp2)で開発しています。
> EXEファイルとDLLファイルを自作しているのですが、
> 自作DLLの動的な参照設定の方法が分からず、途方に暮れています。

VBの「参照設定」は事前、つまりコンパイル前に行うものです。
VBSやVBAと異なり動的に行うといった概念がありません。

EXEを作った後でDLLを動的に使いたい場合は、
A,Object型を使う。
B,DLLをバイナリ互換で作り続ける。もしくは基準となるタイプライブラリを
  作り、そこから逸脱しないように作り続ける。
のどちらかになるでしょう。

[ツリー表示へ]
タイトルRe^2: いまさらですが、自作DLLの動的な参照について
記事No11782
投稿日: 2008/03/15(Sat) 22:56
投稿者Take’N
 K.J.K さま
 ご教授ありがとうございます。

 当方の説明が悪かったようです。

開発環境にて
  C:\TEST\自作.EXE
  C:\TEST\自作.DLL

で、開発していた環境から、
実際の動作環境の
  C:\本番\自作.EXE
  C:\本番\自作.DLL

に、移行した場合、どうやって「自作.EXE」から「自作.DLL」を参照設定
させるのかが分からない点です。

「レジストリに登録」したり、「C:\WINDOWS」等のシステムディレクトリに
「自作.DLL」を配置することなく、任意のフォルダに置いた「自作.DLL」を
参照設定させたいのですが、VB6の仕様等で出来ないのでしょうか?

[ツリー表示へ]
タイトルRe: いまさらですが、自作DLLの動的な参照について
記事No11785
投稿日: 2008/03/16(Sun) 09:06
投稿者K.J.K.
> 「レジストリに登録」したり、「C:\WINDOWS」等のシステムディレクトリに
> 「自作.DLL」を配置することなく、任意のフォルダに置いた「自作.DLL」を
> 参照設定させたいのですが、VB6の仕様等で出来ないのでしょうか?

VB6で作れるDLLはActiveX DLLですから、レジストリに登録するのは「必須」
です。
# Side by Sideを使う場合を除く。

[ツリー表示へ]
タイトルRe^2: いまさらですが、自作DLLの動的な参照について
記事No11806
投稿日: 2008/03/18(Tue) 01:03
投稿者Take’N
K.J.K さま
ご教授ありがとうございます。

やはり、仕様上の問題なのですね。

AccessVBAみたいに可能とだろうと思い込んでいたのが
大きな間違いでした。

どうもありがとうございました。

[ツリー表示へ]