Méthode IPrintCoreHelperPS ::CreateInstanceOfMSXMLObject (prcomoem.h)
La méthode IPrintCoreHelperPS ::CreateInstanceOfMSXMLObject crée un instance d’un objet MSXML.
Syntaxe
HRESULT CreateInstanceOfMSXMLObject(
[in] IN REFCLSID rclsid,
[in] IN LPUNKNOWN pUnkOuter,
[in] IN DWORD dwClsContext,
[in] IN REFIID riid,
[out] OUT LPVOID *ppv
);
Paramètres
[in] rclsid
CLSID associé aux données et au code qui seront utilisés pour créer l’objet.
[in] pUnkOuter
Pointeur vers l’interface IUnknown de l’objet d’agrégation ( IUnknown de contrôle). Ce paramètre doit être NULL, ce qui signifie que l’objet n’est pas créé dans le cadre d’un agrégat.
[in] dwClsContext
Contexte dans lequel le code qui gère l’objet nouvellement créé s’exécutera. Les seules valeurs valides sont NULL et CLSCTX_INPROC_SERVER, qui est une valeur de l’énumération CLSCTX (décrite dans la documentation Microsoft Windows SDK).
[in] riid
Référence à l’identificateur de l’interface qui sera utilisée pour communiquer avec l’objet.
[out] ppv
Pointeur vers une adresse mémoire qui reçoit l’adresse de l’interface demandée dans le paramètre riid . Si IPrintCoreHelperPS ::CreateInstanceOfMSXMLObject retourne correctement, *ppv contient l’adresse de l’interface demandée. Si cette méthode échoue, *ppv contient NULL.
Valeur retournée
IPrintCoreHelperPS ::CreateInstanceOfMSXMLObject doit retourner l’une des valeurs suivantes.
Code de retour | Description |
---|---|
|
Une instance de la classe d’objets spécifiée a été créée avec succès. |
|
La classe spécifiée ne peut pas être créée dans le cadre d’un agrégat. |
|
La classe spécifiée n’implémente pas l’interface demandée, ou l’interface IUnknown de contrôle n’expose pas l’interface demandée. |
|
Une classe spécifiée n’est pas inscrite dans la base de données d’inscription. Cette valeur peut également indiquer que le type de serveur que vous avez demandé dans le type d’énumération CLSCTX n’est pas inscrit ou que les valeurs des types de serveur dans le Registre sont endommagées. |
Remarques
Le plug-in ne doit pas créer directement un objet MSXML en appelant CoCreateInstance (décrit dans la documentation du Kit de développement logiciel (SDK) Windows. Au lieu de cela, il doit appeler Pscript pour ce faire. La raison en est que dans certaines conditions dans lesquelles le pilote d’imprimante peut être utilisé, comme avec des versions antérieures du système d’exploitation, le système d’exploitation n’a pas besoin d’inscrire la version requise de MSXML, qui est actuellement la version 6. Dans de telles situations, l’appel de CoCreateInstance peut échouer. Toutefois, le pilote principal garantit que partout où le pilote est présent, la DLL de l’analyseur MSXML est également présente sur l’ordinateur, ce qui permet de créer un objet MSXML si nécessaire.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | prcomoem.h (inclure Prcomoem.h) |