Partager via


IDataModelManager4 ::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 sort d’une propriété/méthode de deux façons :

  • Un seul HRESULT défaillant sans informations d’erreur étendues. Il n’y a plus d’informations qui peuvent être fournies pour l’erreur ou 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 indiquant plus en détail 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/boxed est retourné ici.

Valeur de retour

Cette méthode retourne HRESULT.

Remarques

exemple de code

ComPtr<IDataModelManager4> 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.
}

Exigences

Exigence Valeur
d’en-tête dbgmodel.h

Voir aussi

interface IDataModelManager4