• ベストアンサー

IDispatch と dispinterface の違い

開発環境:VC++6.0 MFC COMの勉強をしているのですが、IDispatch と dispinterface の違いがわかりません。 どちらもVBやVBScriptからメソッドやプロパティを呼び出すために必要みたいですが、どう使い分ければよいかわかりません。 よろしくお願い致します。

  • pugoo
  • お礼率96% (25/26)

質問者が選んだベストアンサー

  • ベストアンサー
  • passepied
  • ベストアンサー率50% (18/36)
回答No.1

dispinterfaceは属性です。 dispinterface属性をもつインターフェースはIDispatchから派生します。

関連するQ&A

  • VB と VC++ と VC#の違いは?

    VB・VCの初心者です。 Javaは結構かじっていたので、なんとなくわかりますが、そろそろVB・VC++等の勉強もしたいと思っております。 VB・VCを勉強するにあたり、疑問点があります。 そもそもVB・VC++・VC#の違いはなんでしょうか? 長所・短所があると思いますが、いまいちつかめきれておりません。 初心者のレベルでの質問で申し訳ないですが、 ご教授頂けますよう宜しくお願い致します。

  • VB6からVC6で作成したDLLの関数を呼び出すときに注意すること

    VB6からVC6で作成したDLLの関数を呼び出すときに、型について気をつけないといけませんが、VB6でint型のものはVC6ではshortにしないといけないのでしょうか?マシンやOSや開発環境(例えばVS2005やGCC)により違ってくるのでしょうか? VB6とVC6でやり取りする場合の型について知りたいです。 あと、ActiveXのDLLの場合は関数にアクセスするのではなく、COM(という概念がわかっていないのですが)を使うのですか?

  • VB.NETとC#.NETの違いは何ですか?

    VB.NETとC#.NETの違いは何ですか? .NET Frameworkのクラス、メソッド、プロパティ等が分かれば、 VB.NETもC#.NETも大して違いはないと聞きました。 一体どういうことでしょうか?

  • VC++6.0とVC++.netの違い

    今会社ではVC++6.0の開発環境で、開発を行っています。 家のパソコンにも環境開発を設定したいのですが、VC++6.0とVC++.netのどちらを買えばいいのかで迷っています。両者の違いは何なのでしょうか。 またVC++.netを買った場合、従来のVC++6.0の参考書は使えるのでしょうか。(いわゆるVC++のやり方に大きな差があるのか) 分かりません。教えてください。 また、分かりやすく解説してあるサイトなどがありましたら、教えていただけるとありがたいです。

  • VBとVBScriptのちがい

    これからVBScriptを使ってプログラムを作ろうと思っています。その際に何かいい参考書を購入しようと思っています。ところが、VBの参考書はよく見かけるのですが、VBScriptの方はあまり見かけません。 そこで VB(VisualBasic)と VBScript(Visual Basic Scripting Edition)の違いを教えてほしいのですが・・・

  • Windowsアプリケーションのお勧め開発言語について

    vectorなどで公開できるような、Windowsアプリケーションを開発したいと考えています。 皆様のお勧めの開発言語・開発環境を教えて頂けますでしょうか。 条件は、ランタイムが不要なことです。(なのでVB.Netなどは対象外です。) はじめは、TurboDelphiを考えていたんですが、今はフリー版が配布されていないようなので、 VC++のATL/WTLを使うのが良いのかなと思っています。 (正直、またWin32、MFC、ATL、WTLの違いも理解できていませんが、、、) 何かお勧めがありましたら御教授ください。

  • Media Player ActiveXのリサイズ

    VC++(MFC)で、Windows Media Player ActiveX (WMP OCX)を埋め込んだアプリケーションを開発しています。ActiveXのサイズを動的に変更するメソッドが見当たらないのですが、どうやったらサイズ変更ができるのでしょうか。 InvokeHelperでプロパティを設定すればよいのかな?とも思ったのですが、ウィンドウサイズに該当するプロパティのIDがわかりません(x x) ご存知の方がいらっしゃいましたらよろしくお願いします。

  • VC60とVC70の違いは?

    コンパイル環境のVC60とVC70の具体的な違いってありますでしょうか? 今までVC++6.0を使っており、最近.NETに環境を変えたのですが、6.0で動いてたものが.NETでは動きません。 具体的に言うと、SOAPでWSDL指定のサーバーとの通信を行うのですが、.NETでは通信を行わず、UNKNOWN ERRORと返ってきます。 SOAP通信の方法ですが、SOAPClient生成から、Invokeメソッドで通信を行っています。 6.0と.NETでの違いはコンパイラの違いと思っているのですが。。どなたかご存知の方、ご教授お願いできないでしょうか?

  • 環境の違いにて動かないPG

    環境 WIN98 VC++6.0 MFC にて 初心者の私が一生懸命作ったプログラムが、自宅の開発環境では動くのに、会社のPCでは動かなくなってがっかりしました。 会社ではXP、2000、98のどれも動きませんでした。 開発途中では会社でも動いたことは確認してます。 開発したPCでないと動かないのかと思って、自宅の古い95にて試したら無事に動きました。 皆さんはこのようなことは有りませんか? また、このような事態を避けるために注意するポイントなどあればアドバイスください。

  • IDisposableインターフェースの使い方について

    VB2005で開発しています。 インターフェースの勉強をしているのですが、 うまく理解できない部分がありましたので、質問させて頂きました。 IDisposableインターフェースを実装したところ、 Disposeメソッドとその中に GC.SuppressFinalize(Me) という記述が自動で記載されました。 この「GC.SuppressFinalize(Me)」についての質問です。 これはDisposeメソッドを実行した場合は、 明示的にCOMオブジェクトなどの解放処理が行われるため、 ガベージコレクションの機能を実行しなくて良い ということが書かれていると思って良いのでしょうか? そもそもCOMオブジェクトなどは、 明示的に解放しなければ解放できないため、 ガベージコレクションの機能を実行しないことを明示する必要はないのではないか? と疑問に思ってしまったため、質問させて頂きました。 もし宜しければ、ご回答頂けませんか? 宜しくお願い致します。

専門家に質問してみよう