Put a try block arount it and see what the error is.
try
{
pRecordset->Open(bstrtSQL, vtMissing, adOpenForwardOnly,adLockOptimistic, adCmdUnknown);
}
catch(_com_error &e) //We hit an error in SQL
{
_bstr_t bstrSource(e.Source());
_bstr_t bstrDescription(e.Description());
CString...