Здравствуйте Admiral, Вы писали:
A>Здравствуйте Тимур, Вы писали:
Т>>Здравствуйте Admiral, Вы писали:
Т>>Извините, забыл зайти как положено и появился в форуме как аноним.
Т>>Итак, еще раз.
Т>>Я делаю следующее:
Т>>Т>>HRESULT CMyClassData::AddNew(bool& bHandled, CSnapInObjectRootBase* pObj)
Т>>{
Т>> CAddDLG dlgAdd;
Т>> int ret=dlgAdd.DoModal();
Т>> if(ret==IDOK)
Т>> {
Т>> std::auto_ptr <CChildData> spData(new CChildData(dlgAdd.m_Name));
Т>> m_myCollection.push_back(spData);
Т>> CComPtr<IConsole> mCons;
Т>> mCons=((CMyClass*)pObj)->>m_spConsole ;
Т>> CComQIPtr<IConsoleNameSpace, &IID_IConsoleNameSpace> spConsoleNameSpace(mCons);
Т>> SCOPEDATAITEM sdi;
Т>> ::ZeroMemory(&sdi,sizeof(SCOPEDATAITEM));
Т>> sdi.mask =SDI_STR | SDI_PARAM | SDI_IMAGE | SDI_OPENIMAGE | SDI_PARENT;
Т>> spData->>GetScopePaneInfo(&sdi);
Т>> sdi.displayname =MMC_CALLBACK;
Т>> sdi.relativeID = spData->get_Cookie();
Т>> HRESULT hr=spConsoleNameSpace->InsertItem (&sdi); }
Т>> }
Т>> bHandled=false;//true;
Т>> return S_OK;
Т>>};
Т>>
Т>>InsertItem возвращает ошибку и ничего не вставляет.
Т>>Очевидно, что я делаю что-то не так. Но что — если есть какие-нибудь идеи, буду очень благодарен.
Т>>Тимур
A>Что возвращает spData->get_Cookie()? Если HSCOPEITEM родителя, тогда я пока затрудняюсь ответить, что не так.
A>ЗЫ:
A>Кстати, об auto_ptr:
A>http://rsdn.ru/forum/message.asp?mid=32311Автор: Рек
Дата: 28.02.02
Похоже, что Вы правы — get_Cookie возвращает что-то не то. А где добыть HSCOPEITEM родителя?