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

Voir aussi

Interface IDataModelManager2