Partager via


IDataModelManager ::CreateErrorObject, méthode (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 aucune autre information ne peut être donnée 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 à l’erreur HRESULT retournée par la fonction.

pwszMessage

Message facultatif donnant 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/boxé 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

Voir aussi

Interface IDataModelManager