IDataModelManager3 ::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<IDataModelManager3> 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 |