Types de ressources
Erreur et gestion des erreurs
COM
PHP Manual

# Constantes pré-définies

Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.

Constantes COM
Constante | Valeur | Description | Notes
--- | --- | --- | ---
`CLSCTX_INPROC_SERVER` (entier) | 1 | Le code qui crée et gère les objets de cette classe est une bibliothèque DLL qui est exécutée dans le même processus que l'appelant de la fonction, spécifiant ainsi le contexte de la classe. |
`CLSCTX_INPROC_HANDLER` (entier) | 2 | Le code qui gère les objets de cette classe est un gestionnaire du processus. C'est une bibliothèque DLL qui s'exécute dans le processus client et implémente les structures côté client de cette classe lorsque l'on accède à ses instances à distance. |
`CLSCTX_LOCAL_SERVER` (entier) | 4 | Le code d'exécution qui crée et gère les objets de cette classe s'exécute sur la même machine mais est chargé dans un espace séparé du processus. |
`CLSCTX_REMOTE_SERVER` (entier) | 16 | Le contexte distant. Le code qui crée et gère les objets de cette classe s'exécute sur une machine différente. |
`CLSCTX_SERVER` (entier) | 21 | Indique le code serveur, et si le processus est local ou distant. Correspond aux constantes `CLSCTX_INPROC_SERVER`, `CLSCTX_LOCAL_SERVER` et `CLSCTX_REMOTE_SERVER`. |
`CLSCTX_ALL` (entier) | 23 | Indique tous les contextes de la classe. Correspond aux constantes `CLSCTX_INPROC_HANDLER` et `CLSCTX_SERVER`. |
`VT_NULL` (entier) | 1 | Référence de pointeur NULL. |
`VT_EMPTY` (entier) | 0 | Une propriété, dont le type de l'indicateur est `VT_EMPTY`, n'a aucune donné accosiée ; aussi, la taille de la valeur est de zéro. |
`VT_UI1` (entier) | 17 | Entier non signé sur 1 octet. |
`VT_I2` (entier) | 2 | 2 octets représentant une valeur entière signée sur 2 octets. |
`VT_I4` (entier) | 3 | Entier signé sur 4 octets. |
`VT_R4` (entier) | 4 | Valeur à virgule flottante IEEE sur 32 octets. |
`VT_R8` (entier) | 5 | Valeur à virgule flottante IEEE sur 64 octets. |
`VT_BOOL` (entier) | 11 | Valeur booléenne. |
`VT_ERROR` (entier) | 10 | Code erreur ; contient le code statut associé avec l'erreur. |
`VT_CY` (entier) | 6 | Entier complémentaire de 8 octets (par tranche de 10.000). |
`VT_DATE` (entier) | 7 | Nombre à virgule flottante de 64 octets, représentant le nombre de jours (et non de secondes) depuis le 01 Décembre 1899. Par exemple, January 1, 1900, vaut 2.0, January 2, 1900, vaut 3.0, et ainsi de suite). Stocké sous la même représentation que la constante `VT_R8`. |
`VT_BSTR` (entier) | 8 | Pointeur vers une chaîne Unicode finissant par NULL. |
`VT_DECIMAL` (entier) | 14 | Une structure décimale. |
`VT_UNKNOWN` (entier) | 13 | Un pointeur vers un objet qui implémente l'interface IUnknown. |
`VT_DISPATCH` (entier) | 9 | Un pointeur vers un objet a été spécifié. |
`VT_VARIANT` (entier) | 12 | Un indicateur de type suivi par la valeur correspondante. `VT_VARIANT` peut être utilisé uniquement avec `VT_BYREF`. |
`VT_I1` (entier) | 16 | Entier signé sur 1 octet. |
`VT_UI2` (entier) | 18 | Entier non signé sur 2 octets. |
`VT_UI4` (entier) | 19 | Entier non signé sur 4 octets. |
`VT_INT` (entier) | 22 | Valeur entière signée sur 4 octets (équivaut à `VT_I4`). |
`VT_UINT` (entier) | 23 | Entier non signé sur 4 octets (équivaut à `VT_UI4`). |

`VT_ARRAY` (entier)

8192

Si l'indicateur de type est combiné avec `VT_ARRAY` via un opérateur OR, la valeur sera un pointeur vers un SAFEARRAY. `VT_ARRAY` peut utiliser l'opérateur OR avec les types de données suivantes : `VT_I1`, `VT_UI1`, `VT_I2`, `VT_UI2`, `VT_I4`, `VT_UI4`, `VT_INT`, `VT_UINT`, `VT_R4`, `VT_R8`, `VT_BOOL`, `VT_DECIMAL`, `VT_ERROR`, `VT_CY`, `VT_DATE`, `VT_BSTR`, `VT_DISPATCH`, `VT_UNKNOWN` et `VT_VARIANT`.

`VT_BYREF` (entier) | 16384 | Si l'indicateur de type est combiné avec `VT_BYREF` via un opérateur OR, la valeur sera une référence. Les types de référence sont interprétés comme une référence vers les données, similaire au type de référence en C++. |
`CP_ACP` (entier) | 0 | Le code page ANSI par défaut. |
`CP_MACCP` (entier) | 2 | Le code page Macintosh. |
`CP_OEMCP` (entier) | 1 | Le code page OEM par défaut. |
`CP_UTF7` (entier) | 65000 | Unicode (UTF-7). |
`CP_UTF8` (entier) | 65001 | Unicode (UTF-8). |
`CP_SYMBOL` (entier) | 42 | Traduction des SYMBOL. |
`CP_THREAD_ACP` (entier) | 3 | Le code page ANSI du thread courant. |
`VARCMP_LT` (entier) | 0 | Le bstr de gauche est plus petit que le bstr de droite. |
`VARCMP_EQ` (entier) | 1 | Les 2 paramètres sont égaux. |
`VARCMP_GT` (entier) | 2 | Le bstr de gauche est plus grand que le bstr de droite. |
`VARCMP_NULL` (entier) | 3 | Chaque expression vaut NULL. |
`NORM_IGNORECASE` (entier) | 1 | Ignore la casse. |
`NORM_IGNORENONSPACE` (entier) | 2 | Ignore les caractères non espacés. |
`NORM_IGNORESYMBOLS` (entier) | 4 | Ignore les symboles. |
`NORM_IGNOREWIDTH` (entier) | 131072 | Ignore la taille des caractères. |
`NORM_IGNOREKANATYPE` (entier) | 65536 | Ignore le type Kana. |
`NORM_IGNOREKASHIDA` (entier) | 262144 | Ignore les caractères Arabe kashida. | La disponibilité dépend de la bibliothèque sous-jacente.
`DISP_E_DIVBYZERO` (entier) | -2147352558 | Une erreur retournée qui indique qu'une division par zéro a eu lieu. |
`DISP_E_OVERFLOW` (entier) | -2147352566 | Une erreur qui indique qu'une valeur n'a pû être convertie en la représentation attendue. |
`MK_E_UNAVAILABLE` (entier) | -2147221021 | Code statut iMoniker COM, retourné lors d'erreurs générées lorsque l'on a tenté d'appeler une fonction qui n'est pas disponible. |

Types de ressources
Erreur et gestion des erreurs
COM
PHP Manual