HRESULT __RPC_STUB ICatInformation_EnumClassesOfCategories_Stub( ICatInformation *This, ULONG cImplemented, CATID rgcatidImpl[], ULONG cRequired, CATID rgcatidReq[], IEnumCLSID** ppenumClsid ) { TRACE("(%p)\n", This); return ICatInformation_EnumClassesOfCategories( This, cImplemented, rgcatidImpl, cRequired, rgcatidReq, ppenumClsid ); }
static void do_enum(void) { HRESULT hr; REFCLSID rclsid = &CLSID_StdComponentCategoriesMgr; ICatInformation *pICat = (ICatInformation*)0xdeadbeef; GUID the_guid[1]; GUID the_cat[1]; GUID wanted_guid; ULONG fetched = -1; static WCHAR szCatID[] = { '{', 'd','e','a','d','c','a','f','e', '-','0','0','0','0','-','0','0','0','0', '-','0','0','0','0', '-','0','0','0','0','0','0','0','0','0','0','0','0', '}',0 }; static WCHAR szGuid[] = { '{', 'd','e','a','d','c','a','f','e','-', 'b','e','e','d','-', 'b','e','a','d','-', 'd','e','a','d','-', 'c','a','f','e','b','e','a','d','d','e','a','d', '}',0 }; IEnumCLSID *pIEnum =(IEnumCLSID*)0xdeadcafe; CLSIDFromString(szCatID,the_cat); CLSIDFromString(szGuid,&wanted_guid); OleInitialize(NULL); hr = CoCreateInstance(rclsid,NULL,CLSCTX_INPROC_SERVER, &IID_ICatInformation, (void **)&pICat); ok_ole_success(hr, "CoCreateInstance"); hr = ICatInformation_EnumClassesOfCategories(pICat, -1, NULL, -1, NULL, &pIEnum); ok_ole_success(hr,"ICatInformation_EnumClassesOfCategories"); IEnumGUID_Release(pIEnum); hr = ICatInformation_EnumClassesOfCategories(pICat, 1, the_cat, -1, NULL, &pIEnum); ok_ole_success(hr,"ICatInformation_EnumClassesOfCategories"); hr = IEnumGUID_Next(pIEnum,1,the_guid, &fetched); ok (fetched == 0,"Fetched wrong number of guids %u\n",fetched); IEnumGUID_Release(pIEnum); if (register_testentry()) { hr = ICatInformation_EnumClassesOfCategories(pICat, 1, the_cat, -1, NULL, &pIEnum); ok_ole_success(hr,"ICatInformation_EnumClassesOfCategories"); hr = IEnumGUID_Next(pIEnum,1,the_guid, &fetched); ok (fetched == 1,"Fetched wrong number of guids %u\n",fetched); ok (IsEqualGUID(the_guid,&wanted_guid),"Guids do not match\n"); IEnumGUID_Release(pIEnum); unregister_testentry(); } else skip( "Could not register the test category\n" ); ICatInformation_Release(pICat); OleUninitialize(); }