EMA C++ Configuration Guide : 4 Enterprise Message API Configuration Processing : 4.3 Processing the Enterprise Message API XML Configuration File : 4.3.4 Processing the Provider “Name”
 
4.3.4 Processing the Provider “Name”
The Enterprise Message API is hard-coded to use a default non-interactive provider of EmaProvider. However, you can change this by using the configuration file (e.g., EmaConfig.xml). When you use the XML file, the default Provider Name is either specified by the DefaultProvider element, or if this parameter is not set, then the Enterprise Message API application will default to the name of the first non-interactive provider component.
If DefaultProvider uses an invalid name (i.e., no Provider components in the XML file use that name), the Enterprise Message API throws an exception indicating that DefaultProvider is invalid.
If the EmaConfig.xml has no Provider components, the Enterprise Message API application uses EmaProvider.