VB6.0で作ったActiveX DLLをVC6.0で作るMFC DLLでラップするということは可能なのでしょうか?
また可能な場合、どのようにやれば良いのでしょうか?
ラップする、の定義にもよるでしょう。
そのActiveXを使うMFC DLL を作って、ユーザはそちらを使う。
ただし、システムには ActiveX DLL を別途(or MFC DLL の中で)
追加する必要がある。
ということなら、やってみたことはないですが、まぁできるのでは。
ActiveX DLL を完全に見せないようにしたいということであれば、
少なくとも私の知る限りでは無理だと思います。
# ActiveX をそのままC++から参照するか、C++に移植しちゃうのが早そうな。
すみません。私も、「ラップする」の意味が良くわからなかったので質問させて頂きました。
上記のような表現を使った場合、普通はどういうことを指すのかなと。
ActiveX DLLをMFCの拡張(または標準)DLLでラップすることに意味があるかちと疑問。
理由は
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpdnaskdr/htm/drgui54.asp
以前に提示していただいた↑のサイトのなかの
> Visual Basic が要求するのは、コンポーネント マネージャへの
> インターフェイス ポインタです。
という記述があるためです。
MFCのDLLに上記の「コンポーネントマネージャ」が自動的に付加されることはないのではないでしょうか?
> 上記のような表現を使った場合、普通はどういうことを指すのかなと。
上記のような表現だけでは普通は伝わりません。
ラップしたくなるケースは複数あるためです。
例えば
1)共通インターフェイスを作りたくなった
2)下層を外部に公開したくない
3)下層に問題がありそれを上層で強引にリカバリーするため
などの理由が考えられます。
今回の場合は、経緯を見ていると3)に該当すると思われますが、
経緯を知らない方からみれば、このスレだけを見て「ラップする」の意味を
具体的にはかりかねるのは当然だと思いますよ。
ツイート | ![]() |