OK, I am using the getimage sample from the sdk samples. I want to change the

the following with:

 hr = pWiaDevMgr->RegisterEventCallbackInterface(
        0,
        NULL,
        &WIA_EVENT_DEVICE_DISCONNECTED,
        this,
        &m_pDisconnectEventObject
    );

I need the to know what information needs to be put into the

HRESULT RegisterEventCallbackCLSID(
[in]  LONG lFlags,
[in]  BSTR bstrDeviceID,
[in]  const GUID *pEventGUID,
[in]  const GUID *pClsID,
[in]  BSTR bstrName,
[in]  BSTR bstrDescription,
[in]  BSTR bstrIcon
);

Function.
How do I set up a pClsID?
This is the information I used. It does not work.
I found this on the internet:

IWiaDevMgr *pWiaDevMgr = NULL;
HRESULT hr;

::CoInitialize(NULL);

if( (hr = ::CoCreateInstance(CLSID_WiaDevMgr, NULL, CLSCTX_LOCAL_SERVER,
IID_IWiaDevMgr, (void**)&pWiaDevMgr )) == S_FALSE)
{
return hr;
}
CLSID appId ={0,};
// will a guid I generate be able to use in the following.

if(CLSIDFromString(OLESTR("{DBFBB272-B295-44AF-932C-AF5DAF5FF901}"),&appId) != NOERROR)
{
}
wchar_t pAppName[] = L"Sample01";
wchar_t pArg[] = "what goes here the name of my executable?"
wchar_t pIcon[] = L"test3, 0";
wchar_t pAstrick[] = L"*";
wchar_t pAppDescript[] = L"THIS SAMPLE PROGRAM";
GUID guid = WIA_EVENT_ITEM_CREATED;

hr = pWiaDevMgr->RegisterEventCallbackCLSID(WIA_REGISTER_EVENT_CALLBACK,
SysAllocString(pAstrick),
&guid,
&appId,
SysAllocString(pArg),
SysAllocString(pAppDescript),
SysAllocString(pIcon));
if(FAILED(hr))
{
return hr;
}