1
0
mirror of https://github.com/php/doc-ja.git synced 2026-03-24 07:02:08 +01:00
Files
archived-doc-ja/reference/com/book.xml
2024-01-06 20:15:18 +09:00

90 lines
4.0 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 94ef70805b847c24941dfd7828df2f5a0fd48c96 Maintainer: takagi Status: ready -->
<!-- CREDITS: hirokawa,mumumu -->
<book xml:id="book.com" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<?phpdoc extension-membership="bundled" ?>
<title>COM および .Net (Windows)</title>
<titleabbrev>COM</titleabbrev>
<!-- {{{ preface -->
<preface xml:id="intro.com">
&reftitle.intro;
<para>
COM は <literal>Component Object Model</literal> の略語であり、
DCE RPC (オープンスタンダード) の最上位のオブジェクト指向レイヤーです。
COM はコール手順を共通化し、あらゆる言語でコードを記述し、
(COM に対応した)他の言語で書かれたコードをコール、相互運用することを可能にします。
あらゆる言語で書くことを可能にするだけではなく、
同じ実行形式の一部となることすら不要です。
コードは、同じマシンで実行される他のプロセスのコードである DLL からロードしたり、
または、リモートマシン上の他のプロセスにあるコードを DCOM (分散 COM) で
利用することができます。
この場合、コードの中では、コンポーネントの存在する場所を意識する必要はありません。
</para>
<para>
OLE オートメーションと呼ばれる COM のサブセットがあります。
これは、COM オブジェクトに疎な結合を行うことができる COM インターフェイスを
提供します。これにより、コンパイル時にオブジェクトの動作を知ることなく、
実行時にコールを行うことができるようになります。
PHP COM 拡張モジュールは、OLE オートメーションを使用して
スクリプトから互換性のあるオブジェクトを作成/コールすることができます。
技術的に述べると、
全ての COM オブジェクトが OLE 互換であるというわけではないため、
実際には、この拡張モジュールは "<literal>PHP の OLE オートメーション
拡張モジュール</literal>" と呼ばれるべきものです。
</para>
<para>
ところで、なぜ COM を使用する必要があるのでしょう? COM は、
Windows 環境でアプリケーションとコンポーネントを結び付ける代表的な手法の一つで、
COM を使用して Microsoft Word を起動し、
ドキュメントテンプレートを埋めて、Word 文書として結果を保存し、Web サイトの
訪問者に送信することができます。
また COM を使用して、ネットワークの管理タスクを処理したり
IIS を設定したりすることができます。これらは最も一般的な使用法にすぎません。
COM でできることはまだまだたくさんあります。
</para>
<para>
さらに Microsoft により提供された
COM との相互運用レイヤーを用いて
.Net アセンブリのインスタンス化と生成をサポートしました。
</para>
</preface>
<!-- }}} -->
&reference.com.setup;
&reference.com.constants;
&reference.com.error-handling;
&reference.com.examples;
&reference.com.com;
&reference.com.dotnet;
&reference.com.variant;
&reference.com.compersisthelper;
&reference.com.com-exception;
&reference.com.com-safearray-proxy;
&reference.com.reference;
</book>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->