1
0
mirror of https://github.com/php/doc-ja.git synced 2026-03-27 16:42:17 +01:00
Files
archived-doc-ja/reference/com/book.xml
TAKAGI Masahiro a95e4de08e Sync with en
git-svn-id: https://svn.php.net/repository/phpdoc/ja/trunk@330348 c90b9560-bf6c-de11-be94-00142212c4b1
2013-05-24 21:19:30 +00:00

94 lines
4.2 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1634a886415d0ab4df195fe49d18a1c150b70758 Maintainer: takagi Status: ready -->
<!-- CREDITS: hirokawa -->
<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>
PHP 5 以降、この拡張モジュール(とこの文書)は最初から書き直され、
古い紛らわしい部分は削除されました。さらに Microsoft により提供された
COM との相互運用レイヤーを用いて
.Net アセンブリのインスタンス化と生成をサポートしました。
</para>
<para>
PHP 5 におけるこの拡張モジュールの変更点の概要については、
<link xlink:href="&url.zend.comdotnet;">この文章</link>
を参照してください。
</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.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
-->