1 | //////////////////////////////////////////////////////////// |
---|
2 | // Copyright (C) Roman Ryltsov, 2008-2012 |
---|
3 | // Created by Roman Ryltsov roman@alax.info |
---|
4 | // |
---|
5 | // $Id: MaxMindGeoLite.idl 49 2012-02-11 22:47:53Z roman $ |
---|
6 | |
---|
7 | import "oaidl.idl"; |
---|
8 | import "ocidl.idl"; |
---|
9 | |
---|
10 | [ |
---|
11 | object, |
---|
12 | uuid(3C3125E8-60D6-4703-B7B4-7A024CEA2F05), |
---|
13 | dual, |
---|
14 | oleautomation, |
---|
15 | helpstring("ILocation Interface"), |
---|
16 | pointer_default(unique) |
---|
17 | ] |
---|
18 | interface ILocation : IDispatch |
---|
19 | { |
---|
20 | [propget, id(1)] HRESULT Country([out, retval] BSTR* psCountry); |
---|
21 | [propget, id(2)] HRESULT Region([out, retval] BSTR* psRegion); |
---|
22 | [propget, id(3)] HRESULT City([out, retval] BSTR* psCity); |
---|
23 | [propget, id(4)] HRESULT PostalCode([out, retval] BSTR* psPostalCode); |
---|
24 | [propget, id(5)] HRESULT Latitude([out, retval] DOUBLE* pfLatitude); |
---|
25 | [propget, id(6)] HRESULT Longitude([out, retval] DOUBLE* pfLongitude); |
---|
26 | [propget, id(7)] HRESULT MetroCode([out, retval] BSTR* psMetroCode); |
---|
27 | [propget, id(8)] HRESULT AreaCode([out, retval] BSTR* psAreaCode); |
---|
28 | }; |
---|
29 | [ |
---|
30 | object, |
---|
31 | uuid(B6E2FBEB-1AC2-424B-B2DA-FF6398ADCF0C), |
---|
32 | dual, |
---|
33 | oleautomation, |
---|
34 | helpstring("ILocations Interface"), |
---|
35 | pointer_default(unique) |
---|
36 | ] |
---|
37 | interface ILocations : IDispatch |
---|
38 | { |
---|
39 | [propget, id(DISPID_VALUE)] HRESULT Item([in] VARIANT vIndex, [out, retval] ILocation** ppLocation); |
---|
40 | }; |
---|
41 | [ |
---|
42 | object, |
---|
43 | uuid(34BF53BB-D4C8-4002-A0EC-5BA70FE7ACA3), |
---|
44 | dual, |
---|
45 | oleautomation, |
---|
46 | helpstring("ILazyLocations Interface"), |
---|
47 | pointer_default(unique) |
---|
48 | ] |
---|
49 | interface ILazyLocations : IDispatch |
---|
50 | { |
---|
51 | [propget, id(1)] HRESULT Initialized([out, retval] VARIANT_BOOL* pbInitialized); |
---|
52 | }; |
---|
53 | [ |
---|
54 | uuid(F80BC862-E43E-4809-ACFC-1A608209C860), |
---|
55 | version(1.0), |
---|
56 | helpstring("Alax.Info Geolocation Tools (using MaxMind GeoLite) 1.0 Type Library") |
---|
57 | ] |
---|
58 | library AlaxInfoMaxMindGeoLite |
---|
59 | { |
---|
60 | importlib("stdole2.tlb"); |
---|
61 | [ |
---|
62 | uuid(E4758497-363F-467D-BE04-C2222748C7E6), |
---|
63 | noncreatable, |
---|
64 | helpstring("Location Class") |
---|
65 | ] |
---|
66 | coclass Location |
---|
67 | { |
---|
68 | [default] interface ILocation; |
---|
69 | //interface ISupportErrorInfo; |
---|
70 | }; |
---|
71 | [ |
---|
72 | uuid(350EBCB9-942A-4D11-9192-54AA6230F7BF), |
---|
73 | helpstring("Locations Class") |
---|
74 | ] |
---|
75 | coclass Locations |
---|
76 | { |
---|
77 | [default] interface ILocations; |
---|
78 | //interface ISupportErrorInfo; |
---|
79 | }; |
---|
80 | [ |
---|
81 | uuid(29752330-E1FB-43D0-ADBF-21AF77633259), |
---|
82 | helpstring("LazyLocations Class") |
---|
83 | ] |
---|
84 | coclass LazyLocations |
---|
85 | { |
---|
86 | [default] interface ILocations; |
---|
87 | interface ILazyLocations; |
---|
88 | //interface ISupportErrorInfo; |
---|
89 | }; |
---|
90 | }; |
---|