Méthode IDataModelManager2 ::CreateErrorObject (dbgmodel.h)
La méthode CreateErrorObject crée un « objet d’erreur ». Le modèle de données n’a pas la notion d’exceptions et de flux d’exceptions. L’échec provient d’une propriété/méthode de deux manières :
Un SEUL HRESULT défaillant sans informations d’erreur étendues. Soit il n’y a plus d’informations qui peuvent être fournies pour l’erreur, soit l’erreur elle-même est explicite à partir du HRESULT retourné.
Un SEUL HRESULT défaillant associé à des informations d’erreur étendues. Les informations d’erreur étendues sont un objet d’erreur retourné dans l’argument de sortie de la propriété/méthode.
Syntaxe
HRESULT CreateErrorObject(
HRESULT hrError,
PCWSTR pwszMessage,
IModelObject **object
);
Paramètres
hrError
Code d’erreur pour lequel les informations d’erreur étendues sont créées. Si une fonction donnée est l’entité qui crée un objet d’erreur pour un échec, ce code doit correspondre au HRESULT défaillant retourné par la fonction.
pwszMessage
Message facultatif qui donne une indication plus approfondie de ce qui a échoué et pourquoi. Ce message sera la conversion de chaîne d’affichage de l’objet d’erreur créé.
object
L’objet d’erreur nouvellement construit/encadré sera retourné ici.
Valeur retournée
Cette méthode retourne HRESULT.
Remarques
Exemple de Code
ComPtr<IDataModelManager> spManager; /* get the data model manager */
ComPtr<IModelObject> spError;
if (SUCCEEDED(spManager->CreateErrorObject(
E_INVALIDARG,
L"Calls to the Sum() method must pass at least one argument",
&spError)))
{
// You can pass this back in places where you see
// _COM_Errorptr_ annotated. Methods, for instance, may return
// E_INVALIDARG and an error object to channel out additional information.
// Property accessor GetValue implementations can also do this.
// Indexers can do this.
}
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | dbgmodel.h |