• ベストアンサー

COMコンポーネントって何?

hyde-laの回答

  • hyde-la
  • ベストアンサー率28% (42/146)
回答No.5

すいません、クラスオブジェクトではありません、 「クラス」でお願いします。 コンピュータが扱うデータは基本的にすべて数値ですが、 アスキーコードなど、ある範囲の数値を人間に見やすい 文字に変換可能なものを「テキスト」といいます。これはご存知の通り。 そして、そうでないものが「バイナリ」です。 つまり、BMPやJPEG,EXEはバイナリファイルです。 HTMLやJavaScript、ソースファイル等はテキストファイルです。 語弊を承知でより簡便に言うなら、「文字」しか書いてないのはテキスト、 文字以外の数値があるならバイナリです。 ソースファイルはテキストから、コンパイル・リンクの過程でバイナリファイルとなります。 COMオブジェクトは、この状態でないとなりませんので、 つまりソースが何の言語であったかなんてことは どうでもよくなっている、ということです。 因みに、COMではC・C++でいうヘッダファイルの代わりに IDLというインターフェイス定義言語という専用の簡易な言語を使います。 これは、ただの定義を記述する言語ですので非常に簡単で、どちらかというと C言語みたいな、設定ファイルです。

holydevil
質問者

補足

ありがとうございます。 なんとなく見えてきました。あとクラスってどういうことなんでしょう?クラスの意味がはっきり分かりません。

関連するQ&A

  • COMコンポーネントファイルが参照できない。

    現在VisualBasic2010expressを使っています。 オーディオの録音用プログラムを作りたいと思い とあるホームページからwave入出力用のCOMコンポーネントファイル(.ocx)をダウンロードしました。 E:ドライブの「system32」の中に入れVBから「ツール→アイテムの選択→COMコンポーネント→参照」と操作しsystem32に入ってる目的のファイルを探したんですがどこにも見当たりません。 VBではなく普通に「sysytem32」を開いた場合は目的のファイルはきちんと存在します。 またVB上でも「system32」上ではなく「system」のフォルダに置いた場合は参照できます。 なぜ「system32」上だと参照できないんでしょうか? 読み取り専用、隠れファイル等もチェックを外してみたのですが変わりませんでした。 VBでファイル名を示し実行した場合は「そのファイルは存在しません」となります 使用しているOSはWindows8です。8が原因何でしょうか? 初歩的な質問で申し訳ありません。

  • COMコンポーネント・・・?

    Windows終了時にいつもCOMコンポーネントのインストール中というのが表示され、“すぐに終了”というボタンを押さない限り正常終了できません。 COMコンポーネントとは一体何なのですか?

  • BluetoothのCOMポートの変更方法(COM16以下に)

    Princetronのブルートースアダプターを購入しました。 セットするとCOM40になりました。 VBのCOMコンポーネントのポートNoは最大でCOM16までです。 どうしたらCOM40を16以下にできるでしょうか。教えてください 新規接続の設定では40から62までの範囲でしかできません。

  • コンポーネントについて

    VBでコンポーネントを使用する際、使用者がそのdllやocxファイル等を持っていない時のために、実行ファイルと同じディレクトリに必要なdllやocxを置いて、それを利用してコンポーネントを使用したいと思うのですが、どうすればよいのでしょうか?わざわざsystem32にコピーするのは面倒ですので。。

  • ダイアル型の部品コンポーネントってありますか?

    お客様の要望で、見た目がダイアル型のツマミのようなインターフェースにして欲しいとの要望があがり困っています。 このようなコンポーネントが用意されている言語はありますか? 実際、B'sPlayerやPowerDVDなどの動画再生ソフトでは、このようなインターフェースが実装されているようです。 マウスでドラッグすると値が増減するような部品が欲しいのです。 言語はVBやJavaだと助かります。 ちょっとあいまいな質問になってしまったようですが、よろしくお願いいたします。

  • コンポーネントの追加ができません

    Win2000ProでVB6.0を使用しています administratorではコンポーネントの追加ができるのに、Win2000Serverに登録された一般ユーザではコンポーネントの追加ができません 一般のユーザでコンポーネントの追加ができるようにするにはどうしたらいいのでしょうか?

  • COMコンポーネントの構造の本質的理解ができない

    プログラミングを始めて間もない初心者です。 windowsアプリケーションを制御対象として扱おうと、win32oleライブラリをrequireしてCOMコンポーネントを扱う方法をネット上で色々調べてみたのですがどうも腑に落ちない点・分からない点があるので質問します。 rubyリファレンスマニュアルからリンクされているサイト(http://jp.rubyist.net/magazine/?0003-Win32OLE)において、以下のような記述があります。 >COM ではインスタンスを生成するときに「COM コンポーネント」を指 >定するための ProgID を引数として WIN32OLE.new メソッドを実行し >ます。 COM コンポーネントとは、Windows に登録された、ある機能 >(たとえば、IE や MS Office の制御機能) を提供するためのもので >す。この「COM コンポーネント」を利用して作成したインスタンス を>「COM オブジェクト」とこの記事では呼んでいます。 COM オブジェク>トを作成した後は、その COM オブジェクトで定義されている「メソッ>ド」を実行することでそのコンポーネントが提供する機能を実現する >ことができます。 この文に従えば、作成したCOMオブジェクトを扱う方法を知るためにはCOMオブジェクトで定義されているメソッドを参照すれば良いこととなります。そこで自分もWIN32OLE.new("InternetExplorer.Application") によって得たCOMオブジェクトにWIN32OLE.ole_methodsを適用することでメソッドの一覧を取得しましたが、前述のサイトで紹介されているie.document.all.Item()というメソッドを探してみてもどこにも見つかりません。 これはどういうことなのかと思い、ネット上で色々とCOMとは何か、タイプライブラリとは何かなどを調べて見ましたが、いまだCOMの全体像の把握ができません。 たとえばrubyの場合、あるオブジェクトに対して使えるメソッドというのはそのオブジェクトが該当するクラスに於いて定義されているメソッド((1))及びkernelモジュールで定義されている組み込みメソッド((2))ですよね。 (初心者なのでこの理解にも間違いがあるかもしれませんがその場合はご指摘お願いします) このような考え方でいくとWIN32OLE.ole_methodsによって取得したメソッドの一覧は(1)にあたり、document.all.Item()というのは(2)にあたるのではないかという考えもできるかと思うのですが誰か正しい理解をご教授いただきたいです。 質問が長くなってしまいましたがie.document.all.Item()というメソッドがどこに定義されているのか、そういったメソッドの定義場所はCOMにおいてどのように見つけるのか、そこだけでもいいのでよろしくお願いします。

    • ベストアンサー
    • Ruby
  • VC++6.0でMSCommコンポーネントを使う方法

    こんにちは。 VC++6.0でMScommコンポーネントを使いたいのですが どのようにすればMSCommのコンポーネントが使えるのでしょうか? VB6.0での使い方は判ったのですが、VC++6.0での使い方が 判りません。 よろしくおねがいたします。

  • VBのコンポーネントについて

    Visual Basicのコンポーネントの『Activex Data Object 2.5 Library』を使いたいのですが・・・ないのです。VersionはVB6.0 Enterpriseを使ってます。学校で使った時は(バージョンは違うと思うですが。多分Professionalだとおもうのですが)コンポーネントの項目にありました。Versionがかわると機能もつかわるのでしょうか?『Activex Data Object 2.5 Library』を使いたい場合どうすればいいのでしょうか?

  • [VB5] RDO:エラー'429' ActiveX コンポーネントはオブジェクトを作成できません

    Excel97のVBAを使って、RDOでSQLserverに接続しようとすると 「ActiveX コンポーネントはオブジェクトを作成できません」 というエラーがでます。 VB5.0を再セットアップするとよいと以下のURLにはのっていますが http://www.microsoft.com/japan/support/kb/articles/J043/1/96.asp VBがインストールされていないマシンでは、どうしたらよいのでしょうか? RDOのバージョンは2.0です。