1
|
1 /***********************************************************************\
|
|
2 * comcat.d *
|
|
3 * *
|
|
4 * Windows API header module *
|
|
5 * *
|
|
6 * Translated from MinGW Windows headers *
|
|
7 * by Stewart Gordon *
|
|
8 * *
|
|
9 * Placed into public domain *
|
|
10 \***********************************************************************/
|
|
11 module win32.comcat;
|
|
12
|
|
13 import win32.windows, win32.ole2;
|
|
14 private import win32.basetyps, win32.cguid, win32.objbase, win32.unknwn,
|
|
15 win32.windef, win32.wtypes;
|
|
16
|
|
17 alias IEnumGUID* LPENUMGUID;
|
|
18
|
|
19 interface IEnumGUID : IUnknown {
|
|
20 HRESULT Next(ULONG, GUID*, ULONG*);
|
|
21 HRESULT Skip(ULONG);
|
|
22 HRESULT Reset();
|
|
23 HRESULT Clone(LPENUMGUID*);
|
|
24 }
|
|
25
|
|
26 alias GUID CATID;
|
|
27 alias REFGUID REFCATID;
|
|
28 alias GUID_NULL CATID_NULL;
|
|
29 alias IsEqualGUID IsEqualCATID;
|
|
30
|
|
31 struct CATEGORYINFO {
|
|
32 CATID catid;
|
|
33 LCID lcid;
|
|
34 OLECHAR[128] szDescription;
|
|
35 }
|
|
36 alias CATEGORYINFO* LPCATEGORYINFO;
|
|
37
|
|
38 alias IEnumGUID IEnumCATID;
|
|
39 alias LPENUMGUID LPENUMCATID;
|
|
40 alias IID_IEnumGUID IID_IEnumCATID;
|
|
41
|
|
42 alias IEnumGUID IEnumCLSID;
|
|
43 alias LPENUMGUID LPENUMCLSID;
|
|
44 alias IID_IEnumGUID IID_IEnumCLSID;
|
|
45
|
|
46 interface ICatInformation : IUnknown {
|
|
47 HRESULT EnumCategories(LCID, LPENUMCATEGORYINFO*);
|
|
48 HRESULT GetCategoryDesc(REFCATID, LCID, PWCHAR*);
|
|
49 HRESULT EnumClassesOfCategories(ULONG, CATID*, ULONG, CATID*,
|
|
50 LPENUMCLSID*);
|
|
51 HRESULT IsClassOfCategories(REFCLSID, ULONG, CATID*, ULONG, CATID*);
|
|
52 HRESULT EnumImplCategoriesOfClass(REFCLSID, LPENUMCATID*);
|
|
53 HRESULT EnumReqCategoriesOfClass(REFCLSID, LPENUMCATID*);
|
|
54 }
|
|
55 alias ICatInformation* LPCATINFORMATION;
|
|
56
|
|
57 interface ICatRegister : IUnknown {
|
|
58 HRESULT RegisterCategories(ULONG, CATEGORYINFO*);
|
|
59 HRESULT UnRegisterCategories(ULONG, CATID*);
|
|
60 HRESULT RegisterClassImplCategories(REFCLSID, ULONG, CATID*);
|
|
61 HRESULT UnRegisterClassImplCategories(REFCLSID, ULONG, CATID*);
|
|
62 HRESULT RegisterClassReqCategories(REFCLSID, ULONG, CATID*);
|
|
63 HRESULT UnRegisterClassReqCategories(REFCLSID, ULONG, CATID*);
|
|
64 }
|
|
65 alias ICatRegister* LPCATREGISTER;
|
|
66
|
|
67 interface IEnumCATEGORYINFO : IUnknown {
|
|
68 HRESULT Next(ULONG, CATEGORYINFO*, ULONG*);
|
|
69 HRESULT Skip(ULONG);
|
|
70 HRESULT Reset();
|
|
71 HRESULT Clone(LPENUMCATEGORYINFO*);
|
|
72 }
|
|
73 alias IEnumCATEGORYINFO* LPENUMCATEGORYINFO;
|