VBの「プロジェクト」「参照設定」をVCでおこなうには

[戻る]
mihomiho [E-Mail] 2001/02/10(土) 00:43:33
VC++でVBのような「プロジェクト」「参照設定」の各ライブラリーの
メソッドを利用できる方法はどのようにしたらいいのでしょうか?
VCの「ファイル」「新規作成」「プロジェクト」で"Win32Application"で
作りたいのですが教えてください。

mihomiho [E-Mail] 2001/02/10(土) 00:45:27
VC++でVBのような「プロジェクト」「参照設定」の各ライブラリーのメソッドを利用できる方
法はどのようにしたらいいのでしょうか?VCの「ファイル」「新規作成」「プロジェクト」で"Win32Application"で作りたいのですが教えてください。

atsumori [E-Mail] 2001/02/14(水) 20:03:30
こんにちは、mihomihoさん。

VC++で作成したDLLに付いてなら、使ったことがあります。
多分、VBで作成したものも同様に出来るはずです。

VC++で同様の事を行うには、COMサポートを使って次のように書けます。

1.#import文で使いたいタイプライブラリを指定
2.ソースの中で、
     <Lib名>::<InterfacePointer名>  <変数名>
        (__uuidof(<Lib名>::<Class名>));
  と宣言する。

こうすると、<変数名>を通してメソッドとプロパティにアクセスできます。

例えば、SAMPCTRLというライブラリにアクセスしたいとします。
//---sample start ---
#import "SAMPCTRL.tlb"

int main()
{
  try
  {
    SAMPCTRLLib::ISAMPCTRLPtr pSamp
      (__uuidof(SAMPCTRLLib::SAMPCTRL));

    pSamp-><メソッド・プロパティ>

  }catch (const _com_error& Err){
    // エラー処理
  }
  return 0;
}
//---sample end ---

この例では、try例外処理を使っているので、
「[プロジェクト]→[設定]→C/C++タグ」にある「C++言語」カテゴリ
で、例外処理を扱えるように変更するのを忘れないでくださいね。
(私はよく忘れてBuildするときに怒られる(^^;))

ライブラリ名やインタフェース名は、使いたいライブラリの*.idlファイルにあります。

こんなとこでどうですか?
ではでは。
//

古いスレッドには追加発言できません。