Здравствуйте, Vi2, Вы писали:
Vi2>VTS_DISPATCH означает передачу именно IDispatch* указателя. Поэтому перед использованием в качестве IIam нужно сделать QueryInterface. Поэтому лучше привести к нормальному (ожидаемому) виду void CBacnetDlg::OnBacnetIam(IDispatch *srv). Тогда и ошибка обращения будет очевидной.
О! То что надо! Заработало —
OnIam(IIam *service)
{
IIamPtr serv;
service->QueryInterface(&serv);
//...
serv->Release();
В догонку — что делать с указателями — правильно ли я зоову Release() или оно само сделается для smart_ptr..?