Public Member Functions | |
HRESULT | DisplayDebugGUI () |
HRESULT | GetNumProviders (int *pNumProviders) |
HRESULT | GetClassID (int iProvider, GUID *pClassID) |
HRESULT | AddService (GUID *pClassID) |
HRESULT | RemoveService (GUID *pClassID) |
HRESULT | GetProviderDescription (GUID *pClassID, BSTR *p_bDescription) |
HRESULT | SetProviderDescription (GUID *pClassID, BSTR bDescription) |
An interested party must use this interface to communicate with the desired service provider to determine if it has any physical devices present:
... int iResult; HRESULT hr; IEPadEnum *pEPadEnum;
iResult = 0; if ( FAILED(CoInitialize(NULL)) ) { iResult = -1; printf("Failed to initialize com\\n"); } else { pEPadEnum = NULL; hr = CoCreateInstance( CLSID_IEPadEnum, NULL, CLSCTX_INPROC, IID_IIEPadEnum, (void **)&pEPadEnum ); if ( !FAILED(hr) ) { pEPadEnum->DisplayDebugGUI(); pEPadEnum->Release(); } else { printf("Failed to create class instance\\n"); } // endif } // endif
CoUninitialize(); ...
... GUID guid; CString currentService = GetCurrentService(&guid); if (currentService.GetLength()>0) { gIIEPad *pInstance = NULL; HRESULT hr = CoCreateInstance( guid, NULL, CLSCTX_INPROC, IID_gIIEPad, (void **)&pInstance); if ( !FAILED(hr) ) { pInstance->DisplayDebugGUI(); } // endif ... } // endif ...
HRESULT DisplayDebugGUI | ( | ) |
Displays (private) debug GUI for debugging purposes. This is not intended to be used by end-users but is useful for system development and may aide technical support.
HRESULT GetNumProviders | ( | int * | pNumProviders | ) |
Obtains the number of registered service providers.
HRESULT GetClassID | ( | int | iProvider, | |
GUID * | pClassID | |||
) |
Obtains the class GUID for the referenced service provider. Basically one decides which service provider they want to use and then request the GUID so that they can perform a CoCreateInstance against the GUID for the interface.
All service providers must implement the gIIEPad interface.
HRESULT AddService | ( | GUID * | pClassID | ) |
This hook allows service providers to register their presence with the enumerator when they themselves are registered.
HRESULT RemoveService | ( | GUID * | pClassID | ) |
Allows for a service provider to remove itself from the list of registered service providers. Typically this is done when a service provider is uninstalled (regsvr32 /u).
HRESULT GetProviderDescription | ( | GUID * | pClassID, | |
BSTR * | p_bDescription | |||
) |
Returns a text descriptor of what the serviceprovider is and/or does. May be useful for user GUI's.
HRESULT SetProviderDescription | ( | GUID * | pClassID, | |
BSTR | bDescription | |||
) |
Allows 3rd parties (such as service providers or GUI's) to set the associated text for a service provider.