- PR -

C#で作成したDLLの静的クラスをVB6.0から利用する方法

1
投稿者投稿内容
ふぉる
会議室デビュー日: 2004/06/17
投稿数: 8
投稿日時: 2005-01-05 19:00
C#で作成したDLLをエクセルのVBAから利用したいのですが、
インスタンスを作成して利用するタイプのクラスは CreateObject で
利用できたのですが、定数とスタティックメソッドしか存在しない
インスタンス不要なクラスを

 DLL名.クラス名.定数名
 DLL名.クラス名.スタティック関数名

という記述で参照しようとすると
「オブジェクトが必要です。」
というエラーが出てしまいます。
かといって、このスタティックなクラスを CreateObject しても

 Set Obj = CreateObject("DLL名.クラス名")
 Obj.定数名
 Obj.スタティック関数名

「オブジェクトは、このプロパティまたはメソッドをサポートしていません。」
というエラーが出て参照出来ません。VB側で一体どのように記述すれば
このクラスを利用できるのでしょう。
ご存知の方がいらっしゃいましたらご教授ください。

最悪、定数を返すだけの static でない関数をこのクラスに用意すれば
定数の参照は出来るのでしょうが、それもどうかと思いますので。
Jubei
ぬし
会議室デビュー日: 2002/03/02
投稿数: 830
お住まい・勤務地: 関西
投稿日時: 2005-01-05 23:25
諸農です。

相互運用のための .NET 型の要件 には静的メソッド、定数フィールドは
COMクライアントに公開されないと書かれていますね。


_________________
諸農和岳
Powered by Turbo Delphi & Microsoft Visual Studio 2005

十兵衛@わんくま同盟
http://blogs.wankuma.com/jubei/
ふぉる
会議室デビュー日: 2004/06/17
投稿数: 8
投稿日時: 2005-01-11 17:27
ありゃ、できないんですね。
やっぱり定数を返すだけのクラスを用意して対処することにします。
諸農さん、情報ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)