Тема: Программное создание нового пункта меню AutoCAD.
Создаю отдельный пункт меню в AutoCAD следующим образом (по примеру в "ObjectARX 2006\samples\entity\polysamp\polymnu.cpp"):
IAcadMenuGroup *mnuGrp = NULL; if (!getAcadMenuGroup(&mnuGrp)) return ; //now get all the popup menus IAcadPopupMenus *mnus = NULL; HRESULT hr = S_OK; hr = mnuGrp->get_Menus(&mnus); IAcadPopupMenu *myMenu = NULL; long cnt = 0l; hr = mnus->get_Count(&cnt); VARIANT vtName; vtName.vt = VT_I4; vtName.lVal = cnt + 1; hr = mnus->Add(getResource(2015 /*IDS_MY_MENU*/), &myMenu); mnuGrp->Release(); cnt = 0; VARIANT vtIndex; vtIndex.vt = VT_I4; vtIndex.lVal = cnt + 1; IAcadPopupMenu *polyMnu = NULL; hr = polarisMenu->AddSubMenu(vtIndex, L"Polysamp Application", &polyMnu); if(FAILED(hr)) return; polarisMenu->Release(); IAcadPopupMenuItem *polycmds = NULL; vtIndex.lVal = 0; hr = polyMnu->AddMenuItem(vtIndex, L"POLY", L"_poly ", &polycmds); ... polycmds->Release(); polyMnu->Release(); return;
Отдельный пункт меню с подменю "Polysamp Application" не создается. AutoCAD 2006, в дебаге ошибок не увидел. Что я неправильно понял в механизме создания меню?