[47] | 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 | [ |
---|
[48] | 42 | object, |
---|
| 43 | uuid(34BF53BB-D4C8-4002-A0EC-5BA70FE7ACA3), |
---|
| 44 | dual, |
---|
| 45 | oleautomation, |
---|
| 46 | helpstring("ILazyLocations Interface"), |
---|
| 47 | pointer_default(unique) |
---|
| 48 | ] |
---|
[49] | 49 | interface ILazyLocations : IDispatch |
---|
[48] | 50 | { |
---|
| 51 | [propget, id(1)] HRESULT Initialized([out, retval] VARIANT_BOOL* pbInitialized); |
---|
| 52 | }; |
---|
| 53 | [ |
---|
[47] | 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 | }; |
---|
[48] | 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 | }; |
---|
[47] | 90 | }; |
---|