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.
1.5.4