- - PR -
.NETでActiceXDLLの作成
1
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-11-11 11:06
はじめまして。こんにちは。
VB6.0で作成した、ActiveXDLLのソースをVB.NETのアップグレードウィザード でアップグレードし、リビルドし、作成されたDLLをASPから呼び出すとエラー になります。ただ単にアップグレードウィザードを使用しただけではだめなの でしょうか?それともVB.NETでは、ASPから呼び出して使うようなActiveXDLLは 作れないのでしょうか?ちなみに現在ASPからは、CreateObjectを使用してDLL を呼び出しているのですが、呼び出し方に問題がありますでしょうか? 宜しくお願いします。 | ||||||||||||
|
投稿日時: 2004-11-11 11:59
ActiveX DLLではなくアセンブリが作成されるのでは?
そもそも、VB.NETでActiveXは作れない。
はい。 アセンブリを参照して、後はクラスとして扱えるはずです。 | ||||||||||||
|
投稿日時: 2004-11-11 12:43
非常に厳密に言えばそうですが、COM 連携で、クラスライブラリを ActiveX DLL として扱えますよね? _________________ // 渋木宏明 (Hiroaki SHIBUKI) // http://hidori.jp/ // Microsoft MVP for Visual C# // // @IT会議室 RSS 配信中: http://hidori.jp/rss/atmarkIT/ | ||||||||||||
|
投稿日時: 2004-11-11 14:14
渋木様、todo様
ご回答ありがとうございます。
VB.NETでビルドされたDLLは、アセンブリと呼ぶのですね・・・ ASPからアセンブリを呼び出す方法を調べます。
上記の方法でDLLを作成すれば、server.CreateObjectにてASPから 呼び出せるのでしょうか? | ||||||||||||
|
投稿日時: 2004-11-11 14:32
ASP.NETではなくASPの話だったのですね。
アセンブリをCCWでラッピングしてASPで利用できるそうです。 COM 呼び出し可能ラッパー (CCW) 参考 http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=16487&forum=7&2 追記 ASPでタイプライブラリを参照できないので、無理? VC++.NETでラッパーCOMを作るしかない? [ メッセージ編集済み 編集者: todo 編集日時 2004-11-11 14:41 ] | ||||||||||||
|
投稿日時: 2004-11-11 14:55
[quote]
ASPでタイプライブラリを参照できないので、無理? [quote] 構文は忘れましたが、タイプライブラリを参照することはできます。 ただし、Windows Script な言語は変数がすべてVARAIANT なので、主に定数値を取り込むために使用します。 COM 連携ではマネージクラスをディスパッチオブジェクトとして公開できるので、特に不都合はありません。
そんな難しいことをする必要は無いです。 C# でも、VB.NET でも構わないので、クラスライブラリプロジェクトを作成し、プロジェクト設定で「COM の相互運用機能に登録」すればOKです。 ただし、↑のアセンブリを再配布する際は、インストーラの作成がほぼ必須です。 # でなければ、実行環境に .NET Framework SDK を入れて regasm する。 _________________ // 渋木宏明 (Hiroaki SHIBUKI) // http://hidori.jp/ // Microsoft MVP for Visual C# // // @IT会議室 RSS 配信中: http://hidori.jp/rss/atmarkIT/ | ||||||||||||
|
投稿日時: 2004-11-11 16:18
todo様
渋木様 ご回答ありがとうございます。 もやもやが晴れてすっきりした気分です。 ありがとうございました。
|
1