VIII. Funkcie na podboru COM pre Windows

Úvod

COM je technológia, ktorá umožňuje znovupoužitie kódu napísaného v akomkoľvek jazyku (akýmkoľvek jazykom) pomocou štandardnej volacej konvencie a skrývania sa za implementačné detaily API akými sú, na ktorom počítači je komponent uložený a ktorý spustiteľný súbor ho uchováva. Možete si to prestaviť ako mechanizmus Remote Procedure Call (RPC) s niektorými základnými koreňmi objektu. Oddeľuje implementáciu od rozhrania.

COM podpruje verziovanie, separáciu implementácie od rozhrania a skrývanie implementačných detailov akými sú vykonateľná lokácia a jazyk, v ktorom bol napísaný.

Požiadavky

Funkcie COM sú k dispozícii iba v PHP pre Windows.

Inštalácia

There is no installation needed to use these functions; they are part of the PHP core.

The windows version of PHP has built in support for this extension. You do not need to load any additional extension in order to use these functions.

Konfigurácia behu

Správanie of these functions je affected by settings in php.ini.

Tabuľka 1. Konfiguračné voľby COM

NázovDefaultZameniteľný
com.allow_dcom"0"PHP_INI_SYSTEM
com.autoregister_typelib"0"PHP_INI_SYSTEM
com.autoregister_verbose"0"PHP_INI_SYSTEM
com.autoregister_casesensitive"1"PHP_INI_SYSTEM
com.typelib_file""PHP_INI_SYSTEM
Pre ďalšie detaily a definície o PHP_INI_* konštantách si pozrite ini_set().

Preddefinované konštanty

The konštanty nižšie sú definované by this extension, and will only be available when the extension has either been compiled into PHP or dynamicky loaded at runtime.

CLSCTX_INPROC_SERVER (integer)

CLSCTX_INPROC_HANDLER (integer)

CLSCTX_LOCAL_SERVER (integer)

CLSCTX_REMOTE_SERVER (integer)

CLSCTX_SERVER (integer)

CLSCTX_ALL (integer)

VT_NULL (integer)

VT_EMPTY (integer)

VT_UI1 (integer)

VT_I2 (integer)

VT_I4 (integer)

VT_R4 (integer)

VT_R8 (integer)

VT_BOOL (integer)

VT_ERROR (integer)

VT_CY (integer)

VT_DATE (integer)

VT_BSTR (integer)

VT_DECIMAL (integer)

VT_UNKNOWN (integer)

VT_DISPATCH (integer)

VT_VARIANT (integer)

VT_I1 (integer)

VT_UI2 (integer)

VT_UI4 (integer)

VT_INT (integer)

VT_UINT (integer)

VT_ARRAY (integer)

VT_BYREF (integer)

CP_ACP (integer)

CP_MACCP (integer)

CP_OEMCP (integer)

CP_UTF7 (integer)

CP_UTF8 (integer)

CP_SYMBOL (integer)

CP_THREAD_ACP (integer)

Tiež pozri

Pre ďalšie informácie o COM si prečítajte COM specification alebo sa môžete pozrieť na Yet Another COM Library (YACL) Dona Boxa.

Obsah
COM -- COM trieda
VARIANT -- VARIANT trieda
com_addref --  Zvyšuje referenčné počítadlo komponentu.
com_get --  Získava hodnotu vlastnosti COM komponentu
com_invoke --  Volá metódu COM komponentu.
com_isenum -- Uchopí IEnumVariant
com_load_typelib -- Načítava Typelib
com_load --  Vytvára nový odkaz na COM komponent
com_propget -- Alias pre com_get()
com_propput -- Alias pre com_set()
com_propset -- Alias of com_set()
com_release --  Znižuje referenčné počítadlo komponentu.
com_set --  Vlastnosti COM komponentu priraďuje hodnotu