Error Provider

Raises specific MPF errors and remaps raised errors to other errors with localized descriptions. Used by Microsoft® Provisioning Framework (MPF).


Program Files\Microsoft Provisioning\Providers\MPFError.dll


Name Error Provider
Version 1
Provider Source Provisioning.MPFError.1


Procedure Description
ReportEvent Raises an error to the Microsoft® Windows® application event log.
SetError Sets the MPF error variable to the HRESULT and description for the current error and raises it to the Provisioning Engine, which propagates the error back to the calling procedure.
TranslateProvisioningError Translates an MPF error raised by a calling procedure and uses a lookup table to translate it into a message that is more meaningful for the current context. For example, this procedure can be used to translate a potentially confusing low-level error to a friendly message.
TranslateUserError Translates a user-specified error to another error. Useful when you know the specific error you want to raise. Mainly used for localization.


The following table lists the errors returned by this provider.

HRESULT Description
0x80004005 The XML error map file was not found in \HKEY_LOCAL_MACHINE\Software\Microsoft\Provisioning\Providers\Error Provider\RootFolder.


Customizing the Provider

Several Microsoft® Windows® registry values allow customization of the provider procedures TranslateProvisioningError and TranslateUserError. These values are located in \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Provisioning\Providers\Error Provider.

Value Description
MustHandleError Determines how to resolve errors when a mapping does not exist in a translation lookup file. If set to 1 (true, default), the provider sets the MPF error to a generic error with hr=E_FAIL (0x80004005) and a description of the failed ErrorId from the error database. If set to 0 (false), MPF maintains the original error code and description but changes the error source to "Error Provider".

This value corresponds to the request XML's mustHandleError node. (The latter exists only as a backup in case someone deletes the registry key.) Any value defined for the registry key overrides any value specified for the request.

RootFolder Specifies the location of the translation mapping file.

To prevent the provider from logging events to the application event log, you can also create the following additional registry entry.

See Also

Standard Providers and Namespaces


Up Top of Page
© 1999-2002 Microsoft Corporation. All rights reserved.