urlmon.pp 65 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080
  1. {$mode objfpc}
  2. {$h+}
  3. { urlmon.h translation.
  4. Original urlmon.h copyright:
  5. Microsoft Windows
  6. Copyright (c) Microsoft Corporation. All rights reserved.
  7. }
  8. Unit urlmon;
  9. Interface
  10. Uses
  11. windows, activex;
  12. Const
  13. liburlmon = 'urlmon.dll';
  14. SZ_URLCONTEXT: POLEStr = 'URL Context';
  15. SZ_ASYNC_CALLEE: POLEStr = 'AsyncCallee';
  16. MKSYS_URLMONIKER = 6;
  17. IID_IAuthenticate : TGUID = '{79eac9d0-baf9-11ce-8c82-00aa004ba90b}';
  18. IID_IBindHost : TGUID = '{fc4801a1-2ba9-11cf-a229-00aa003d7352}';
  19. IID_IBinding : TGUID = '{79eac9c0-baf9-11ce-8c82-00aa004ba90b}';
  20. IID_IBindStatusCallback : TGUID = '{79eac9c1-baf9-11ce-8c82-00aa004ba90b}';
  21. IID_ICodeInstall : TGUID = '{79eac9d1-baf9-11ce-8c82-00aa004ba90b}';
  22. IID_IDataFilter : TGUID = '{69d14c80-c18e-11d0-a9ce-006097942311}';
  23. IID_IEncodingFilterFactory : TGUID = '{70bdde00-c18e-11d0-a9ce-006097942311}';
  24. IID_IHttpNegotiate : TGUID = '{79eac9d2-baf9-11ce-8c82-00aa004ba90b}';
  25. IID_IHttpSecurity : TGUID = '{79eac9d7-bafa-11ce-8c82-00aa004ba90b}';
  26. IID_IInternet : TGUID = '{79eac9e0-baf9-11ce-8c82-00aa004ba90b}';
  27. IID_IInternetBindInfo : TGUID = '{79eac9e1-baf9-11ce-8c82-00aa004ba90b}';
  28. IID_IInternetHostSecurityManager : TGUID = '{3af280b6-cb3f-11d0-891e-00c04fb6bfc4}';
  29. IID_IInternetPriority : TGUID = '{79eac9eb-baf9-11ce-8c82-00aa004ba90b}';
  30. IID_IInternetProtocol : TGUID = '{79eac9e4-baf9-11ce-8c82-00aa004ba90b}';
  31. IID_IInternetProtocolInfo : TGUID = '{79eac9ec-baf9-11ce-8c82-00aa004ba90b}';
  32. IID_IInternetProtocolRoot : TGUID = '{79eac9e3-baf9-11ce-8c82-00aa004ba90b}';
  33. IID_IInternetProtocolSink : TGUID = '{79eac9e5-baf9-11ce-8c82-00aa004ba90b}';
  34. IID_IInternetSecurityManager : TGUID = '{79eac9ee-baf9-11ce-8c82-00aa004ba90b}';
  35. IID_IInternetSecurityMgrSite : TGUID = '{79eac9ed-baf9-11ce-8c82-00aa004ba90b}';
  36. IID_IInternetSession : TGUID = '{79eac9e7-baf9-11ce-8c82-00aa004ba90b}';
  37. IID_IInternetThreadSwitch : TGUID = '{79eac9e8-baf9-11ce-8c82-00aa004ba90b}';
  38. IID_IInternetZoneManager : TGUID = '{79eac9ef-baf9-11ce-8c82-00aa004ba90b}';
  39. IID_IOInet : TGUID = '{79eac9e0-baf9-11ce-8c82-00aa004ba90b}';
  40. IID_IOInetBindInfo : TGUID = '{79eac9e1-baf9-11ce-8c82-00aa004ba90b}';
  41. IID_IOInetPriority : TGUID = '{79eac9eb-baf9-11ce-8c82-00aa004ba90b}';
  42. IID_IOInetProtocol : TGUID = '{79eac9e4-baf9-11ce-8c82-00aa004ba90b}';
  43. IID_IOInetProtocolInfo : TGUID = '{79eac9ec-baf9-11ce-8c82-00aa004ba90b}';
  44. IID_IOInetProtocolRoot : TGUID = '{79eac9e3-baf9-11ce-8c82-00aa004ba90b}';
  45. IID_IOInetProtocolSink : TGUID = '{79eac9e5-baf9-11ce-8c82-00aa004ba90b}';
  46. IID_IOInetSession : TGUID = '{79eac9e7-baf9-11ce-8c82-00aa004ba90b}';
  47. IID_IOInetThreadSwitch : TGUID = '{79eac9e8-baf9-11ce-8c82-00aa004ba90b}';
  48. IID_IPersistMoniker : TGUID = '{79eac9c9-baf9-11ce-8c82-00aa004ba90b}';
  49. IID_ISoftDistExt : TGUID = '{B15B8DC1-C7E1-11d0-8680-00AA00BDCB71}';
  50. IID_IWindowForBindingUI : TGUID = '{79eac9d5-bafa-11ce-8c82-00aa004ba90b}';
  51. IID_IWinInetHttpInfo : TGUID = '{79eac9d8-bafa-11ce-8c82-00aa004ba90b}';
  52. IID_IWinInetInfo : TGUID = '{79eac9d6-bafa-11ce-8c82-00aa004ba90b}';
  53. SID_IBindHost : TGUID = '{fc4801a1-2ba9-11cf-a229-00aa003d7352}';
  54. SID_IInternetHostSecurityManager : TGUID = '{3af280b6-cb3f-11d0-891e-00c04fb6bfc4}';
  55. SID_IInternetSecurityManager : TGUID = '{79eac9ee-baf9-11ce-8c82-00aa004ba90b}';
  56. SID_SBindHost : TGUID = '{fc4801a1-2ba9-11cf-a229-00aa003d7352}';
  57. URLMON_OPTION_USERAGENT = $10000001;
  58. URLMON_OPTION_USERAGENT_REFRESH = $10000002;
  59. CF_NULL = 0;
  60. CFSTR_MIME_NULL = 0;
  61. CFSTR_MIME_TEXT = 'text/plain';
  62. CFSTR_MIME_RICHTEXT = 'text/richtext';
  63. CFSTR_MIME_X_BITMAP = 'image/x-xbitmap';
  64. CFSTR_MIME_POSTSCRIPT = 'application/postscript';
  65. CFSTR_MIME_AIFF = 'audio/aiff';
  66. CFSTR_MIME_BASICAUDIO = 'audio/basic';
  67. CFSTR_MIME_WAV = 'audio/wav';
  68. CFSTR_MIME_X_WAV = 'audio/x-wav';
  69. CFSTR_MIME_GIF = 'image/gif';
  70. CFSTR_MIME_PJPEG = 'image/pjpeg';
  71. CFSTR_MIME_JPEG = 'image/jpeg';
  72. CFSTR_MIME_TIFF = 'image/tiff';
  73. CFSTR_MIME_X_PNG = 'image/x-png';
  74. CFSTR_MIME_BMP = 'image/bmp';
  75. CFSTR_MIME_X_ART = 'image/x-jg';
  76. CFSTR_MIME_X_EMF = 'image/x-emf';
  77. CFSTR_MIME_X_WMF = 'image/x-wmf';
  78. CFSTR_MIME_AVI = 'video/avi';
  79. CFSTR_MIME_MPEG = 'video/mpeg';
  80. CFSTR_MIME_FRACTALS = 'application/fractals';
  81. CFSTR_MIME_RAWDATA = 'application/octet-stream';
  82. CFSTR_MIME_RAWDATASTRM = 'application/octet-stream';
  83. CFSTR_MIME_PDF = 'application/pdf';
  84. CFSTR_MIME_X_AIFF = 'audio/x-aiff';
  85. CFSTR_MIME_X_REALAUDIO = 'audio/x-pn-realaudio';
  86. CFSTR_MIME_XBM = 'image/xbm';
  87. CFSTR_MIME_QUICKTIME = 'video/quicktime';
  88. CFSTR_MIME_X_MSVIDEO = 'video/x-msvideo';
  89. CFSTR_MIME_X_SGI_MOVIE = 'video/x-sgi-movie';
  90. CFSTR_MIME_HTML = 'text/html';
  91. MK_S_ASYNCHRONOUS = $000401E8;
  92. S_ASYNCHRONOUS = MK_S_ASYNCHRONOUS;
  93. E_PENDING = $8000000A;
  94. BINDVERB_GET = $00000000;
  95. BINDVERB_POST = $00000001;
  96. BINDVERB_PUT = $00000002;
  97. BINDVERB_CUSTOM = $00000003;
  98. BINDINFOF_URLENCODESTGMEDDATA = $00000001;
  99. BINDINFOF_URLENCODEDEXTRAINFO = $00000002;
  100. BINDF_ASYNCHRONOUS = $00000001;
  101. BINDF_ASYNCSTORAGE = $00000002;
  102. BINDF_NOPROGRESSIVERENDERING = $00000004;
  103. BINDF_OFFLINEOPERATION = $00000008;
  104. BINDF_GETNEWESTVERSION = $00000010;
  105. BINDF_NOWRITECACHE = $00000020;
  106. BINDF_NEEDFILE = $00000040;
  107. BINDF_PULLDATA = $00000080;
  108. BINDF_IGNORESECURITYPROBLEM = $00000100;
  109. BINDF_RESYNCHRONIZE = $00000200;
  110. BINDF_HYPERLINK = $00000400;
  111. BINDF_NO_UI = $00000800;
  112. BINDF_SILENTOPERATION = $00001000;
  113. BINDF_PRAGMA_NO_CACHE = $00002000;
  114. BINDF_FREE_THREADED = $00010000;
  115. BINDF_DIRECT_READ = $00020000;
  116. BINDF_FORMS_SUBMIT = $00040000;
  117. BINDF_GETFROMCACHE_IF_NET_FAIL = $00080000;
  118. BINDF_DONTUSECACHE = BINDF_GETNEWESTVERSION;
  119. BINDF_DONTPUTINCACHE = BINDF_NOWRITECACHE;
  120. BINDF_NOCOPYDATA = BINDF_PULLDATA;
  121. BSCF_FIRSTDATANOTIFICATION = $00000001;
  122. BSCF_INTERMEDIATEDATANOTIFICATION = $00000002;
  123. BSCF_LASTDATANOTIFICATION = $00000004;
  124. BSCF_DATAFULLYAVAILABLE = $00000008;
  125. BSCF_AVAILABLEDATASIZEUNKNOWN = $00000010;
  126. BINDSTATUS_FINDINGRESOURCE = 1;
  127. BINDSTATUS_CONNECTING = BINDSTATUS_FINDINGRESOURCE+1;
  128. BINDSTATUS_REDIRECTING = BINDSTATUS_CONNECTING+1;
  129. BINDSTATUS_BEGINDOWNLOADDATA = BINDSTATUS_REDIRECTING+1;
  130. BINDSTATUS_DOWNLOADINGDATA = BINDSTATUS_BEGINDOWNLOADDATA+1;
  131. BINDSTATUS_ENDDOWNLOADDATA = BINDSTATUS_DOWNLOADINGDATA+1;
  132. BINDSTATUS_BEGINDOWNLOADCOMPONENTS = BINDSTATUS_ENDDOWNLOADDATA+1;
  133. BINDSTATUS_INSTALLINGCOMPONENTS = BINDSTATUS_BEGINDOWNLOADCOMPONENTS+1;
  134. BINDSTATUS_ENDDOWNLOADCOMPONENTS = BINDSTATUS_INSTALLINGCOMPONENTS+1;
  135. BINDSTATUS_USINGCACHEDCOPY = BINDSTATUS_ENDDOWNLOADCOMPONENTS+1;
  136. BINDSTATUS_SENDINGREQUEST = BINDSTATUS_USINGCACHEDCOPY+1;
  137. BINDSTATUS_CLASSIDAVAILABLE = BINDSTATUS_SENDINGREQUEST+1;
  138. BINDSTATUS_MIMETYPEAVAILABLE = BINDSTATUS_CLASSIDAVAILABLE+1;
  139. BINDSTATUS_CACHEFILENAMEAVAILABLE = BINDSTATUS_MIMETYPEAVAILABLE+1;
  140. BINDSTATUS_BEGINSYNCOPERATION = BINDSTATUS_CACHEFILENAMEAVAILABLE+1;
  141. BINDSTATUS_ENDSYNCOPERATION = BINDSTATUS_BEGINSYNCOPERATION+1;
  142. BINDSTATUS_BEGINUPLOADDATA = BINDSTATUS_ENDSYNCOPERATION+1;
  143. BINDSTATUS_UPLOADINGDATA = BINDSTATUS_BEGINUPLOADDATA+1;
  144. BINDSTATUS_ENDUPLOADDATA = BINDSTATUS_UPLOADINGDATA+1;
  145. BINDSTATUS_PROTOCOLCLASSID = BINDSTATUS_ENDUPLOADDATA+1;
  146. BINDSTATUS_ENCODING = BINDSTATUS_PROTOCOLCLASSID+1;
  147. BINDSTATUS_VERIFIEDMIMETYPEAVAILABLE = BINDSTATUS_ENCODING+1;
  148. BINDSTATUS_CLASSINSTALLLOCATION = BINDSTATUS_VERIFIEDMIMETYPEAVAILABLE+1;
  149. BINDSTATUS_DECODING = BINDSTATUS_CLASSINSTALLLOCATION+1;
  150. BINDSTATUS_LOADINGMIMEHANDLER = BINDSTATUS_DECODING+1;
  151. BINDSTATUS_CONTENTDISPOSITIONATTACH = BINDSTATUS_LOADINGMIMEHANDLER+1;
  152. BINDSTATUS_FILTERREPORTMIMETYPE = BINDSTATUS_CONTENTDISPOSITIONATTACH+1;
  153. BINDSTATUS_CLSIDCANINSTANTIATE = BINDSTATUS_FILTERREPORTMIMETYPE+1;
  154. BINDSTATUS_IUNKNOWNAVAILABLE = BINDSTATUS_CLSIDCANINSTANTIATE+1;
  155. BINDSTATUS_DIRECTBIND = BINDSTATUS_IUNKNOWNAVAILABLE+1;
  156. BINDSTATUS_RAWMIMETYPE = BINDSTATUS_DIRECTBIND+1;
  157. BINDSTATUS_PROXYDETECTING = BINDSTATUS_RAWMIMETYPE+1;
  158. BINDSTATUS_ACCEPTRANGES = BINDSTATUS_PROXYDETECTING+1;
  159. BINDSTATUS_COOKIE_SENT = BINDSTATUS_ACCEPTRANGES+1;
  160. BINDSTATUS_COMPACT_POLICY_RECEIVED = BINDSTATUS_COOKIE_SENT+1;
  161. BINDSTATUS_COOKIE_SUPPRESSED = BINDSTATUS_COMPACT_POLICY_RECEIVED+1;
  162. BINDSTATUS_COOKIE_STATE_UNKNOWN = BINDSTATUS_COOKIE_SUPPRESSED+1;
  163. BINDSTATUS_COOKIE_STATE_ACCEPT = BINDSTATUS_COOKIE_STATE_UNKNOWN+1;
  164. BINDSTATUS_COOKIE_STATE_REJECT = BINDSTATUS_COOKIE_STATE_ACCEPT+1;
  165. BINDSTATUS_COOKIE_STATE_PROMPT = BINDSTATUS_COOKIE_STATE_REJECT+1;
  166. BINDSTATUS_COOKIE_STATE_LEASH = BINDSTATUS_COOKIE_STATE_PROMPT+1;
  167. BINDSTATUS_COOKIE_STATE_DOWNGRADE = BINDSTATUS_COOKIE_STATE_LEASH+1;
  168. BINDSTATUS_POLICY_HREF = BINDSTATUS_COOKIE_STATE_DOWNGRADE+1;
  169. BINDSTATUS_P3P_HEADER = BINDSTATUS_POLICY_HREF+1;
  170. BINDSTATUS_SESSION_COOKIE_RECEIVED = BINDSTATUS_P3P_HEADER+1;
  171. BINDSTATUS_PERSISTENT_COOKIE_RECEIVED = BINDSTATUS_SESSION_COOKIE_RECEIVED+1;
  172. BINDSTATUS_SESSION_COOKIES_ALLOWED = BINDSTATUS_PERSISTENT_COOKIE_RECEIVED+1;
  173. BINDSTRING_HEADERS = 1;
  174. BINDSTRING_ACCEPT_MIMES = BINDSTRING_HEADERS+1;
  175. BINDSTRING_EXTRA_URL = BINDSTRING_ACCEPT_MIMES+1;
  176. BINDSTRING_LANGUAGE = BINDSTRING_EXTRA_URL+1;
  177. BINDSTRING_USERNAME = BINDSTRING_LANGUAGE+1;
  178. BINDSTRING_PASSWORD = BINDSTRING_USERNAME+1;
  179. BINDSTRING_UA_PIXELS = BINDSTRING_PASSWORD+1;
  180. BINDSTRING_UA_COLOR = BINDSTRING_UA_PIXELS+1;
  181. BINDSTRING_OS = BINDSTRING_UA_COLOR+1;
  182. BINDSTRING_USER_AGENT = BINDSTRING_OS+1;
  183. BINDSTRING_ACCEPT_ENCODINGS = BINDSTRING_USER_AGENT+1;
  184. BINDSTRING_POST_COOKIE = BINDSTRING_ACCEPT_ENCODINGS+1;
  185. BINDSTRING_POST_DATA_MIME = BINDSTRING_POST_COOKIE+1;
  186. BINDSTRING_URL = BINDSTRING_POST_DATA_MIME+1;
  187. INET_E_INVALID_URL = HResult($800C0002);
  188. INET_E_NO_SESSION = HResult($800C0003);
  189. INET_E_CANNOT_CONNECT = HResult($800C0004);
  190. INET_E_RESOURCE_NOT_FOUND = HResult($800C0005);
  191. INET_E_OBJECT_NOT_FOUND = HResult($800C0006);
  192. INET_E_DATA_NOT_AVAILABLE = HResult($800C0007);
  193. INET_E_DOWNLOAD_FAILURE = HResult($800C0008);
  194. INET_E_AUTHENTICATION_REQUIRED = HResult($800C0009);
  195. INET_E_NO_VALID_MEDIA = HResult($800C000A);
  196. INET_E_CONNECTION_TIMEOUT = HResult($800C000B);
  197. INET_E_INVALID_REQUEST = HResult($800C000C);
  198. INET_E_UNKNOWN_PROTOCOL = HResult($800C000D);
  199. INET_E_SECURITY_PROBLEM = HResult($800C000E);
  200. INET_E_CANNOT_LOAD_DATA = HResult($800C000F);
  201. INET_E_CANNOT_INSTANTIATE_OBJECT = HResult($800C0010);
  202. INET_E_REDIRECT_FAILED = HResult($800C0014);
  203. INET_E_REDIRECT_TO_DIR = HResult($800C0015);
  204. INET_E_CANNOT_LOCK_REQUEST = HResult($800C0016);
  205. INET_E_ERROR_FIRST = HResult($800C0002);
  206. INET_E_ERROR_LAST = INET_E_REDIRECT_TO_DIR;
  207. CIP_DISK_FULL = 0;
  208. CIP_ACCESS_DENIED = CIP_DISK_FULL+1;
  209. CIP_NEWER_VERSION_EXISTS = CIP_ACCESS_DENIED+1;
  210. CIP_OLDER_VERSION_EXISTS = CIP_NEWER_VERSION_EXISTS+1;
  211. CIP_NAME_CONFLICT = CIP_OLDER_VERSION_EXISTS+1;
  212. CIP_TRUST_VERIFICATION_COMPONENT_MISSING = CIP_NAME_CONFLICT+1;
  213. CIP_EXE_SELF_REGISTERATION_TIMEOUT = CIP_TRUST_VERIFICATION_COMPONENT_MISSING+1;
  214. CIP_UNSAFE_TO_ABORT = CIP_EXE_SELF_REGISTERATION_TIMEOUT+1;
  215. CIP_NEED_REBOOT = CIP_UNSAFE_TO_ABORT+1;
  216. URLOSTRM_USECACHEDCOPY_ONLY = $00000001;
  217. URLOSTRM_USECACHEDCOPY = $00000002;
  218. URLOSTRM_GETNEWESTVERSION = $00000003;
  219. WININETINFO_OPTION_LOCK_HANDLE = 65534;
  220. PI_PARSE_URL = $00000001;
  221. PI_FILTER_MODE = $00000002;
  222. PI_FORCE_ASYNC = $00000004;
  223. PI_USE_WORKERTHREAD = $00000008;
  224. PI_MIMEVERIFICATION = $00000010;
  225. PI_CLSIDLOOKUP = $00000020;
  226. PI_DATAPROGRESS = $00000040;
  227. PI_SYNCHRONOUS = $00000080;
  228. PI_APARTMENTTHREADED = $00000100;
  229. PI_CLASSINSTALL = $00000200;
  230. PD_FORCE_SWITCH = $00010000;
  231. PI_DOCFILECLSIDLOOKUP = PI_CLSIDLOOKUP;
  232. OIBDG_APARTMENTTHREADED = $00000100;
  233. PARSE_CANONICALIZE = 1;
  234. PARSE_FRIENDLY = PARSE_CANONICALIZE+1;
  235. PARSE_SECURITY_URL = PARSE_FRIENDLY+1;
  236. PARSE_ROOTDOCUMENT = PARSE_SECURITY_URL+1;
  237. PARSE_DOCUMENT = PARSE_ROOTDOCUMENT+1;
  238. PARSE_ANCHOR = PARSE_DOCUMENT+1;
  239. PARSE_ENCODE = PARSE_ANCHOR+1;
  240. PARSE_DECODE = PARSE_ENCODE+1;
  241. PARSE_PATH_FROM_URL = PARSE_DECODE+1;
  242. PARSE_URL_FROM_PATH = PARSE_PATH_FROM_URL+1;
  243. PARSE_MIME = PARSE_URL_FROM_PATH+1;
  244. PARSE_SERVER = PARSE_MIME+1;
  245. PARSE_SCHEMA = PARSE_SERVER+1;
  246. PARSE_SITE = PARSE_SCHEMA+1;
  247. PARSE_DOMAIN = PARSE_SITE+1;
  248. PARSE_LOCATION = PARSE_DOMAIN+1;
  249. PARSE_SECURITY_DOMAIN = PARSE_LOCATION+1;
  250. PSU_DEFAULT = 1;
  251. PSU_SECURITY_URL_ONLY = PSU_DEFAULT+1;
  252. QUERY_EXPIRATION_DATE = 1;
  253. QUERY_TIME_OF_LAST_CHANGE = QUERY_EXPIRATION_DATE+1;
  254. QUERY_CONTENT_ENCODING = QUERY_TIME_OF_LAST_CHANGE+1;
  255. QUERY_CONTENT_TYPE = QUERY_CONTENT_ENCODING+1;
  256. QUERY_REFRESH = QUERY_CONTENT_TYPE+1;
  257. QUERY_RECOMBINE = QUERY_REFRESH+1;
  258. QUERY_CAN_NAVIGATE = QUERY_RECOMBINE+1;
  259. QUERY_USES_NETWORK = QUERY_CAN_NAVIGATE+1;
  260. QUERY_IS_CACHED = QUERY_USES_NETWORK+1;
  261. QUERY_IS_INSTALLEDENTRY = QUERY_IS_CACHED+1;
  262. QUERY_IS_CACHED_OR_MAPPED = QUERY_IS_INSTALLEDENTRY+1;
  263. QUERY_USES_CACHE = QUERY_IS_CACHED_OR_MAPPED+1;
  264. INET_E_USE_DEFAULT_PROTOCOLHANDLER = HResult($800C0011);
  265. INET_E_USE_DEFAULT_SETTING = HResult($800C0012);
  266. INET_E_DEFAULT_ACTION = HResult($800C0011);
  267. INET_E_QUERYOPTION_UNKNOWN = HResult($800C0013);
  268. INET_E_REDIRECTING = HResult($800C0014);
  269. PROTOCOLFLAG_NO_PICS_CHECK = $00000001;
  270. URLACTION_MIN = $00001000;
  271. URLACTION_DOWNLOAD_MIN = $00001000;
  272. URLACTION_DOWNLOAD_SIGNED_ACTIVEX = $00001001;
  273. URLACTION_DOWNLOAD_UNSIGNED_ACTIVEX = $00001004;
  274. URLACTION_DOWNLOAD_CURR_MAX = $00001004;
  275. URLACTION_DOWNLOAD_MAX = $000011FF;
  276. URLACTION_ACTIVEX_MIN = $00001200;
  277. URLACTION_ACTIVEX_RUN = $00001200;
  278. URLACTION_ACTIVEX_OVERRIDE_OBJECT_SAFETY = $00001201;
  279. URLACTION_ACTIVEX_OVERRIDE_DATA_SAFETY = $00001202;
  280. URLACTION_ACTIVEX_OVERRIDE_SCRIPT_SAFETY = $00001203;
  281. URLACTION_SCRIPT_OVERRIDE_SAFETY = $00001401;
  282. URLACTION_ACTIVEX_CONFIRM_NOOBJECTSAFETY = $00001204;
  283. URLACTION_ACTIVEX_TREATASUNTRUSTED = $00001205;
  284. URLACTION_ACTIVEX_CURR_MAX = $00001205;
  285. URLACTION_ACTIVEX_MAX = $000013FF;
  286. URLACTION_SCRIPT_MIN = $00001400;
  287. URLACTION_SCRIPT_RUN = $00001400;
  288. URLACTION_SCRIPT_JAVA_USE = $00001402;
  289. URLACTION_SCRIPT_SAFE_ACTIVEX = $00001405;
  290. URLACTION_SCRIPT_CURR_MAX = $00001405;
  291. URLACTION_SCRIPT_MAX = $000015FF;
  292. URLACTION_HTML_MIN = $00001600;
  293. URLACTION_HTML_SUBMIT_FORMS = $00001601;
  294. URLACTION_HTML_SUBMIT_FORMS_FROM = $00001602;
  295. URLACTION_HTML_SUBMIT_FORMS_TO = $00001603;
  296. URLACTION_HTML_FONT_DOWNLOAD = $00001604;
  297. URLACTION_HTML_JAVA_RUN = $00001605;
  298. URLACTION_HTML_CURR_MAX = $00001605;
  299. URLACTION_HTML_MAX = $000017FF;
  300. URLACTION_SHELL_MIN = $00001800;
  301. URLACTION_SHELL_INSTALL_DTITEMS = $00001800;
  302. URLACTION_SHELL_MOVE_OR_COPY = $00001802;
  303. URLACTION_SHELL_FILE_DOWNLOAD = $00001803;
  304. URLACTION_SHELL_VERB = $00001804;
  305. URLACTION_SHELL_WEBVIEW_VERB = $00001805;
  306. URLACTION_SHELL_CURR_MAX = $00001805;
  307. URLACTION_SHELL_MAX = $000019ff;
  308. URLACTION_NETWORK_MIN = $00001A00;
  309. URLACTION_CREDENTIALS_USE = $00001A00;
  310. URLPOLICY_CREDENTIALS_SILENT_LOGON_OK = $00000000;
  311. URLPOLICY_CREDENTIALS_MUST_PROMPT_USER = $00010000;
  312. URLPOLICY_CREDENTIALS_CONDITIONAL_PROMPT = $00020000;
  313. URLPOLICY_CREDENTIALS_ANONYMOUS_ONLY = $00030000;
  314. URLACTION_AUTHENTICATE_CLIENT = $00001A01;
  315. URLPOLICY_AUTHENTICATE_CLEARTEXT_OK = $00000000;
  316. URLPOLICY_AUTHENTICATE_CHALLENGE_RESPONSE = $00010000;
  317. URLPOLICY_AUTHENTICATE_MUTUAL_ONLY = $00030000;
  318. URLACTION_NETWORK_CURR_MAX = $00001A01;
  319. URLACTION_NETWORK_MAX = $00001BFF;
  320. URLACTION_JAVA_MIN = $00001C00;
  321. URLACTION_JAVA_PERMISSIONS = $00001C00;
  322. URLPOLICY_JAVA_PROHIBIT = $00000000;
  323. URLPOLICY_JAVA_HIGH = $00010000;
  324. URLPOLICY_JAVA_MEDIUM = $00020000;
  325. URLPOLICY_JAVA_LOW = $00030000;
  326. URLPOLICY_JAVA_CUSTOM = $00800000;
  327. URLACTION_JAVA_CURR_MAX = $00001C00;
  328. URLACTION_JAVA_MAX = $00001CFF;
  329. URLACTION_INFODELIVERY_MIN = $00001D00;
  330. URLACTION_INFODELIVERY_NO_ADDING_CHANNELS = $00001D00;
  331. URLACTION_INFODELIVERY_NO_EDITING_CHANNELS = $00001D01;
  332. URLACTION_INFODELIVERY_NO_REMOVING_CHANNELS = $00001D02;
  333. URLACTION_INFODELIVERY_NO_ADDING_SUBSCRIPTIONS = $00001D03;
  334. URLACTION_INFODELIVERY_NO_EDITING_SUBSCRIPTIONS = $00001D04;
  335. URLACTION_INFODELIVERY_NO_REMOVING_SUBSCRIPTIONS = $00001D05;
  336. URLACTION_INFODELIVERY_NO_CHANNEL_LOGGING = $00001D06;
  337. URLACTION_INFODELIVERY_CURR_MAX = $00001D06;
  338. URLACTION_INFODELIVERY_MAX = $00001Dff;
  339. URLACTION_CHANNEL_SOFTDIST_MIN = $00001E00;
  340. URLACTION_CHANNEL_SOFTDIST_PERMISSIONS = $00001E05;
  341. URLPOLICY_CHANNEL_SOFTDIST_PROHIBIT = $00010000;
  342. URLPOLICY_CHANNEL_SOFTDIST_PRECACHE = $00020000;
  343. URLPOLICY_CHANNEL_SOFTDIST_AUTOINSTALL = $00030000;
  344. URLACTION_CHANNEL_SOFTDIST_MAX = $00001EFF;
  345. URLPOLICY_ALLOW = $00;
  346. URLPOLICY_QUERY = $01;
  347. URLPOLICY_DISALLOW = $03;
  348. URLPOLICY_NOTIFY_ON_ALLOW = $10;
  349. URLPOLICY_NOTIFY_ON_DISALLOW = $20;
  350. URLPOLICY_LOG_ON_ALLOW = $40;
  351. URLPOLICY_LOG_ON_DISALLOW = $80;
  352. URLPOLICY_MASK_PERMISSIONS = $0f;
  353. MAX_SIZE_SECURITY_ID = 512;
  354. PUAF_DEFAULT = $00000000;
  355. PUAF_NOUI = $00000001;
  356. PUAF_ISFILE = $00000002;
  357. PUAF_WARN_IF_DENIED = $00000004;
  358. PUAF_FORCEUI_FOREGROUND = $00000008;
  359. PUAF_CHECK_TIFS = $00000010;
  360. SZM_CREATE = $00000000;
  361. SZM_DELETE = $00000001;
  362. URLZONE_PREDEFINED_MIN = 0;
  363. URLZONE_LOCAL_MACHINE = 0;
  364. URLZONE_INTRANET = URLZONE_LOCAL_MACHINE+1;
  365. URLZONE_TRUSTED = URLZONE_INTRANET+1;
  366. URLZONE_INTERNET = URLZONE_TRUSTED+1;
  367. URLZONE_UNTRUSTED = URLZONE_INTERNET+1;
  368. URLZONE_PREDEFINED_MAX = 999;
  369. URLZONE_USER_MIN = 1000;
  370. URLZONE_USER_MAX = 10000;
  371. URLZONEREG_DEFAULT = 0;
  372. URLZONEREG_HKLM = URLZONEREG_DEFAULT+1;
  373. URLZONEREG_HKCU = URLZONEREG_HKLM+1;
  374. URLTEMPLATE_CUSTOM = $00000000;
  375. URLTEMPLATE_PREDEFINED_MIN = $00010000;
  376. URLTEMPLATE_LOW = $00010000;
  377. URLTEMPLATE_MEDIUM = $00011000;
  378. URLTEMPLATE_HIGH = $00012000;
  379. URLTEMPLATE_PREDEFINED_MAX = $00020000;
  380. MAX_ZONE_PATH = 260;
  381. MAX_ZONE_DESCRIPTION = 200;
  382. ZAFLAGS_CUSTOM_EDIT = $00000001;
  383. ZAFLAGS_ADD_SITES = $00000002;
  384. ZAFLAGS_REQUIRE_VERIFICATION = $00000004;
  385. ZAFLAGS_INCLUDE_PROXY_OVERRIDE = $00000008;
  386. ZAFLAGS_INCLUDE_INTRANET_SITES = $00000010;
  387. ZAFLAGS_NO_UI = $00000020;
  388. ZAFLAGS_SUPPORTS_VERIFICATION = $00000040;
  389. ZAFLAGS_UNC_AS_INTRANET = $00000080;
  390. SOFTDIST_FLAG_USAGE_EMAIL = $00000001;
  391. SOFTDIST_FLAG_USAGE_PRECACHE = $00000002;
  392. SOFTDIST_FLAG_USAGE_AUTOINSTALL = $00000004;
  393. SOFTDIST_FLAG_DELETE_SUBSCRIPTION = $00000008;
  394. SOFTDIST_ADSTATE_NONE = $00000000;
  395. SOFTDIST_ADSTATE_AVAILABLE = $00000001;
  396. SOFTDIST_ADSTATE_DOWNLOADED = $00000002;
  397. SOFTDIST_ADSTATE_INSTALLED = $00000003;
  398. Type
  399. PHWnd = ^HWND;
  400. PIunknown = ^IUnknown;
  401. PIEnumString = ^IENumString;
  402. PStgMedium = ^TStgMedium;
  403. TUrlZoneReg = Cardinal;
  404. TParseAction = Cardinal;
  405. TQueryOption = Cardinal;
  406. TPSUAction = Cardinal;
  407. PLPCWSTR = ^LPCWSTR;
  408. PPOLEStr = ^POLEStr;
  409. PIBindCtx = ^IBindCtx;
  410. PIEnumFormatEtc = ^IEnumFormatEtc;
  411. PIstream = ^IStream;
  412. // Forward declarations
  413. IInternetProtocolSink = Interface;
  414. IBinding = interface;
  415. IInternetProtocol = interface;
  416. TBINDINFO = packed record
  417. cbSize : ULONG;
  418. szExtraInfo : LPWSTR;
  419. stgmedData : TStgMedium;
  420. grfBindInfoF : DWORD;
  421. dwBindVerb : DWORD;
  422. szCustomVerb : LPWSTR;
  423. cbstgmedData : DWORD;
  424. dwOptions : DWORD;
  425. dwOptionsFlags : DWORD;
  426. dwCodePage : DWORD;
  427. securityAttributes : SECURITY_ATTRIBUTES;
  428. iid : TGUID;
  429. pUnk : IUnknown;
  430. dwReserved : DWORD;
  431. end;
  432. BINDINFO = TBINDINFO;
  433. PBINDINFO = ^TBINDINFO;
  434. TREMSECURITY_ATTRIBUTES = packed record
  435. nLength : DWORD;
  436. lpSecurityDescriptor : DWORD;
  437. bInheritHandle : BOOL;
  438. end;
  439. REMSECURITY_ATTRIBUTES = TREMSECURITY_ATTRIBUTES;
  440. PREMSECURITY_ATTRIBUTES = ^TREMSECURITY_ATTRIBUTES;
  441. TRemBINDINFO = packed record
  442. cbSize : ULONG;
  443. szExtraInfo : LPWSTR;
  444. grfBindInfoF : DWORD;
  445. dwBindVerb : DWORD;
  446. szCustomVerb : LPWSTR;
  447. cbstgmedData : DWORD;
  448. dwOptions : DWORD;
  449. dwOptionsFlags : DWORD;
  450. dwCodePage : DWORD;
  451. securityAttributes : TREMSECURITY_ATTRIBUTES;
  452. iid : TGUID;
  453. pUnk : IUnknown;
  454. dwReserved : DWORD;
  455. end;
  456. PRemBINDINFO = ^TRemBINDINFO;
  457. RemBINDINFO = TRemBINDINFO;
  458. TRemFORMATETC = packed record
  459. cfFormat : DWORD;
  460. ptd : DWORD;
  461. dwAspect : DWORD;
  462. lindex : Longint;
  463. tymed : DWORD;
  464. end;
  465. RemFORMATETC = TRemFORMATETC;
  466. PRemFORMATETC = ^TRemFORMATETC;
  467. TPROTOCOLDATA = packed record
  468. grfFlags : DWORD;
  469. dwState : DWORD;
  470. pData : Pointer;
  471. cbData : ULONG;
  472. end;
  473. PROTOCOLDATA = TPROTOCOLDATA;
  474. PPROTOCOLDATA = ^PROTOCOLDATA;
  475. TZONEATTRIBUTES = packed record
  476. cbSize : ULONG;
  477. szDisplayName : array [0..259] of WideChar;
  478. szDescription : array [0..199] of WideChar;
  479. szIconPath : array [0..259] of WideChar;
  480. dwTemplateMinLevel : DWORD;
  481. dwTemplateRecommended : DWORD;
  482. dwTemplateCurrentLevel : DWORD;
  483. dwFlags : DWORD;
  484. end;
  485. ZONEATTRIBUTES = TZONEATTRIBUTES;
  486. PZONEATTRIBUTES = ^TZONEATTRIBUTES;
  487. TCODEBASEHOLD = packed record
  488. cbSize : ULONG;
  489. szDistUnit : LPWSTR;
  490. szCodeBase : LPWSTR;
  491. dwVersionMS : DWORD;
  492. dwVersionLS : DWORD;
  493. dwStyle : DWORD;
  494. end;
  495. CODEBASEHOLD = TCODEBASEHOLD;
  496. PCODEBASEHOLD = ^TCODEBASEHOLD;
  497. TSOFTDISTINFO = packed record
  498. cbSize : ULONG;
  499. dwFlags : DWORD;
  500. dwAdState : DWORD;
  501. szTitle : LPWSTR;
  502. szAbstract : LPWSTR;
  503. szHREF : LPWSTR;
  504. dwInstalledVersionMS : DWORD;
  505. dwInstalledVersionLS : DWORD;
  506. dwUpdateVersionMS : DWORD;
  507. dwUpdateVersionLS : DWORD;
  508. dwAdvertisedVersionMS : DWORD;
  509. dwAdvertisedVersionLS : DWORD;
  510. dwReserved : DWORD;
  511. end;
  512. SOFTDISTINFO = TSOFTDISTINFO;
  513. PSOFTDISTINFO = ^TSOFTDISTINFO;
  514. TPROTOCOLFILTERDATA = packed record
  515. cbSize : DWORD;
  516. ProtocolSink : IInternetProtocolSink;
  517. Protocol : IInternetProtocol;
  518. Unk : IUnknown;
  519. dwFilterFlags : DWORD;
  520. end;
  521. PROTOCOLFILTERDATA = TPROTOCOLFILTERDATA;
  522. PPROTOCOLFILTERDATA = ^TPROTOCOLFILTERDATA;
  523. TDATAINFO = packed record
  524. ulTotalSize : ULONG;
  525. ulavrPacketSize : ULONG;
  526. ulConnectSpeed : ULONG;
  527. ulProcessorSpeed : ULONG;
  528. end;
  529. DATAINFO = TDATAINFO;
  530. PDATAINFO = ^TDATAINFO;
  531. THIT_LOGGING_INFO = packed record
  532. dwStructSize : DWORD;
  533. lpszLoggedUrlName : LPSTR;
  534. StartTime : TSystemTime;
  535. EndTime : TSystemTime;
  536. lpszExtendedInfo : LPSTR;
  537. end;
  538. HIT_LOGGING_INFO = THIT_LOGGING_INFO;
  539. PHIT_LOGGING_INFO = ^THIT_LOGGING_INFO;
  540. IPersistMonikerRaw = interface['{79eac9c9-baf9-11ce-8c82-00aa004ba90b}']
  541. Function GetClassID(ClassID : PCLSID) : HResult; stdcall;
  542. Function IsDirty : HResult; stdcall;
  543. Function Load(fFullyAvailable : BOOL; pimkName : IMoniker; pibc : IBindCtx; grfMode : DWORD) : HResult; stdcall;
  544. Function Save(pimkName : IMoniker; pbc : IBindCtx; fRemember : BOOL) : HResult; stdcall;
  545. Function SaveCompleted(pimkName : IMoniker; pibc : IBindCtx) : HResult; stdcall;
  546. Function GetCurMoniker(ppimkName : IMoniker) : HResult; stdcall;
  547. end;
  548. PIPersistMonikerRaw = ^IPersistMonikerRaw;
  549. IPersistMoniker = interface['{79eac9c9-baf9-11ce-8c82-00aa004ba90b}']
  550. Function GetClassID(out ClassID : TCLSID) : HResult; stdcall;
  551. Function IsDirty : HResult; stdcall;
  552. Function Load(fFullyAvailable : BOOL; pimkName : IMoniker; pibc : IBindCtx; grfMode : DWORD) : HResult; stdcall;
  553. Function Save(pimkName : IMoniker; pbc : IBindCtx; fRemember : BOOL) : HResult; stdcall;
  554. Function SaveCompleted(pimkName : IMoniker; pibc : IBindCtx) : HResult; stdcall;
  555. Function GetCurMoniker(ppimkName : IMoniker) : HResult; stdcall;
  556. end;
  557. PIPersistMoniker = ^IPersistMoniker;
  558. IBindingRaw = interface ['{79eac9c0-baf9-11ce-8c82-00aa004ba90b}']
  559. Function Abort : HResult; stdcall;
  560. Function Suspend : HResult; stdcall;
  561. Function Resume : HResult; stdcall;
  562. Function SetPriority(nPriority : Longint) : HResult; stdcall;
  563. Function GetPriority(nPriority : PLongint) : HResult; stdcall;
  564. Function GetBindResult(clsidProtocol : PCLSID; dwResult : PDWORD; szResult : PPOLEStr; dwReserved : DWORD) : HResult; stdcall;
  565. end;
  566. PIBindingRaw = ^IBindingRaw;
  567. IBinding = interface ['{79eac9c0-baf9-11ce-8c82-00aa004ba90b}']
  568. Function Abort : HResult; stdcall;
  569. Function Suspend : HResult; stdcall;
  570. Function Resume : HResult; stdcall;
  571. Function SetPriority(nPriority : Longint) : HResult; stdcall;
  572. Function GetPriority(out nPriority : Longint) : HResult; stdcall;
  573. Function GetBindResult(out clsidProtocol : TCLSID; out dwResult : DWORD; out szResult : POLEStr; dwReserved : DWORD) : HResult; stdcall;
  574. end;
  575. PIBinding = ^IBinding;
  576. IBindProtocolRaw = interface['{79eac9cd-baf9-11ce-8c82-00aa004ba90b}']
  577. Function CreateBinding(szUrl : LPCWSTR; pbc : IBindCtx; ppb : PIBindingRaw) : HResult; stdcall;
  578. end;
  579. PIBindProtocolRaw = ^IBindProtocolRaw;
  580. IBindProtocol = interface['{79eac9cd-baf9-11ce-8c82-00aa004ba90b}']
  581. Function CreateBinding(szUrl : LPCWSTR; pbc : IBindCtx; out ppb : IBinding) : HResult; stdcall;
  582. end;
  583. PIBindProtocol = ^IBindProtocol;
  584. IBindStatusCallbackRaw = interface['{79eac9c1-baf9-11ce-8c82-00aa004ba90b}']
  585. Function OnStartBinding(dwReserved : DWORD; pib : IBindingRaw) : HResult; stdcall;
  586. Function GetPriority(nPriority : Pointer) : HResult; stdcall;
  587. Function OnLowResource(reserved : DWORD) : HResult; stdcall;
  588. Function OnProgress(ulProgress, ulProgressMax, ulStatusCode : ULONG; szStatusText : LPCWSTR) : HResult; stdcall;
  589. Function OnStopBinding(hresult : HResult; szError : LPCWSTR) : HResult; stdcall;
  590. Function GetBindInfo(grfBINDF : PDWORD; bindinfo : PBINDINFO) : HResult; stdcall;
  591. Function OnDataAvailable(grfBSCF : DWORD; dwSize : DWORD; formatetc : PFormatEtc; stgmed : PStgMedium) : HResult; stdcall;
  592. Function OnObjectAvailable(const iid : TGUID; punk : IUnknown) : HResult; stdcall;
  593. end;
  594. PIBindStatusCallbackRaw = ^IBindStatusCallbackRaw;
  595. IBindStatusCallback = interface['{79eac9c1-baf9-11ce-8c82-00aa004ba90b}']
  596. Function OnStartBinding(dwReserved : DWORD; pib : IBinding) : HResult; stdcall;
  597. Function GetPriority(out nPriority) : HResult; stdcall;
  598. Function OnLowResource(reserved : DWORD) : HResult; stdcall;
  599. Function OnProgress(ulProgress, ulProgressMax, ulStatusCode : ULONG; szStatusText : LPCWSTR) : HResult; stdcall;
  600. Function OnStopBinding(hresult : HResult; szError : LPCWSTR) : HResult; stdcall;
  601. Function GetBindInfo(out grfBINDF : DWORD; var bindinfo : TBindInfo) : HResult; stdcall;
  602. Function OnDataAvailable(grfBSCF : DWORD; dwSize : DWORD; formatetc : PFormatEtc; stgmed : PStgMedium) : HResult; stdcall;
  603. Function OnObjectAvailable(const iid : TGUID; punk : IUnknown) : HResult; stdcall;
  604. end;
  605. PIBindStatusCallback = ^IBindStatusCallback;
  606. IAuthenticateRaw = interface['{79eac9d0-baf9-11ce-8c82-00aa004ba90b}']
  607. Function Authenticate(hwnd : PHWnd; szUserName, szPassWord : PLPWSTR) : HResult; stdcall;
  608. end;
  609. PIAuthenticateRaw = ^IAuthenticateRaw;
  610. IAuthenticate = interface['{79eac9d0-baf9-11ce-8c82-00aa004ba90b}']
  611. Function Authenticate(var hwnd : HWnd; var szUserName, szPassWord : LPWSTR) : HResult; stdcall;
  612. end;
  613. PIAuthenticate = ^IAuthenticate;
  614. IHttpNegotiateRaw = interface['{79eac9d2-baf9-11ce-8c82-00aa004ba90b}']
  615. Function BeginningTransaction(szURL, szHeaders : LPCWSTR; dwReserved : DWORD; szAdditionalHeaders : PLPWSTR) : HResult; stdcall;
  616. Function OnResponse(dwResponseCode : DWORD; szResponseHeaders, szRequestHeaders : LPCWSTR; szAdditionalRequestHeaders : PLPWSTR) : HResult; stdcall;
  617. end;
  618. PIHttpNegotiateRaw = ^IHttpNegotiateRaw;
  619. IHttpNegotiate = interface['{79eac9d2-baf9-11ce-8c82-00aa004ba90b}']
  620. Function BeginningTransaction(szURL, szHeaders : LPCWSTR; dwReserved : DWORD; out szAdditionalHeaders : LPWSTR) : HResult; stdcall;
  621. Function OnResponse(dwResponseCode : DWORD; szResponseHeaders, szRequestHeaders : LPCWSTR; out szAdditionalRequestHeaders : LPWSTR) : HResult; stdcall;
  622. end;
  623. PIHttpNegotiate = ^IHttpNegotiate;
  624. IWindowForBindingUIRaw = interface['{79eac9d5-bafa-11ce-8c82-00aa004ba90b}']
  625. Function GetWindow(const guidReason : TGUID; hwnd : Pointer) : HResult; stdcall;
  626. end;
  627. PIWindowForBindingUIRaw = ^IWindowForBindingUIRaw;
  628. IWindowForBindingUI = interface['{79eac9d5-bafa-11ce-8c82-00aa004ba90b}']
  629. Function GetWindow(const guidReason : TGUID; out hwnd) : HResult; stdcall;
  630. end;
  631. PIWindowForBindingUI = ^IWindowForBindingUI;
  632. ICodeInstallRaw = interface(IWindowForBindingUI)['{79eac9d1-baf9-11ce-8c82-00aa004ba90b}']
  633. Function OnCodeInstallProblem(ulStatusCode : ULONG; szDestination, szSource : LPCWSTR; dwReserved : DWORD) : HResult; stdcall;
  634. end;
  635. ICodeInstall = ICodeInstallRaw;
  636. PICodeInstall = ^ICodeInstall;
  637. IWinInetInfoRaw = interface['{79eac9d6-bafa-11ce-8c82-00aa004ba90b}']
  638. Function QueryOption(dwOption : DWORD; Buffer : Pointer; cbBuf : PDWORD) : HResult; stdcall;
  639. end;
  640. PIWinInetInfoRaw = ^IWinInetInfoRaw;
  641. IWinInetInfo = interface['{79eac9d6-bafa-11ce-8c82-00aa004ba90b}']
  642. Function QueryOption(dwOption : DWORD; Buffer : Pointer; var cbBuf : DWORD) : HResult; stdcall;
  643. end;
  644. PIWinInetInfo = ^IWinInetInfo;
  645. IHttpSecurityRaw = interface(IWindowForBindingUIRaw)['{79eac9d7-bafa-11ce-8c82-00aa004ba90b}']
  646. Function OnSecurityProblem(dwProblem : DWORD) : HResult; stdcall;
  647. end;
  648. PIHttpSecurityRaw = ^IHttpSecurityRaw;
  649. IHttpSecurity = interface(IWindowForBindingUI)['{79eac9d7-bafa-11ce-8c82-00aa004ba90b}']
  650. Function OnSecurityProblem(dwProblem : DWORD) : HResult; stdcall;
  651. end;
  652. PIHttpSecurity = ^IHttpSecurity;
  653. IWinInetHttpInfoRaw = interface(IWinInetInfoRaw)['{79eac9d8-bafa-11ce-8c82-00aa004ba90b}']
  654. Function QueryInfo(dwOption : DWORD; Buffer : Pointer; cbBuf, dwFlags, dwReserved : PDWORD) : HResult; stdcall;
  655. end;
  656. PIWinInetHttpInfoRaw = ^IWinInetHttpInfoRaw;
  657. IWinInetHttpInfo = interface(IWinInetInfoRaw)['{79eac9d8-bafa-11ce-8c82-00aa004ba90b}']
  658. Function QueryInfo(dwOption : DWORD; Buffer : Pointer; var cbBuf, dwFlags, dwReserved : DWORD) : HResult; stdcall;
  659. end;
  660. PIWinInetHttpInfo = ^IWinInetHttpInfo;
  661. IBindHostRaw = interface['{fc4801a1-2ba9-11cf-a229-00aa003d7352}']
  662. Function CreateMoniker(szName : POLEStr; BC : IBindCtx; mk : PIMoniker; dwReserved : DWORD) : HResult; stdcall;
  663. Function MonikerBindToStorage(Mk : IMoniker; BC : IBindCtx; BSC : IBindStatusCallback; const iid : TGUID; pvObj : PPointer) : HResult; stdcall;
  664. Function MonikerBindToObject(Mk : IMoniker; BC : IBindCtx; BSC : IBindStatusCallback; const iid : TGUID; pvObj : PPointer) : HResult; stdcall;
  665. end;
  666. PIBindHostRaw = ^IBindHostRaw;
  667. IBindHost = interface['{fc4801a1-2ba9-11cf-a229-00aa003d7352}']
  668. Function CreateMoniker(szName : POLEStr; BC : IBindCtx; out mk : IMoniker; dwReserved : DWORD) : HResult; stdcall;
  669. Function MonikerBindToStorage(Mk : IMoniker; BC : IBindCtx; BSC : IBindStatusCallback; const iid : TGUID; out pvObj : Pointer) : HResult; stdcall;
  670. Function MonikerBindToObject(Mk : IMoniker; BC : IBindCtx; BSC : IBindStatusCallback; const iid : TGUID; out pvObj : Pointer) : HResult; stdcall;
  671. end;
  672. PIBindHost = ^IBindHost;
  673. IInternetRaw = interface['{79eac9e0-baf9-11ce-8c82-00aa004ba90b}']
  674. end;
  675. PIInternetRaw = ^IInternetRaw;
  676. IInternet = IInternetRaw;
  677. PIInternet = PIInternetRaw;
  678. IInternetBindInfoRaw = interface ['{79eac9e1-baf9-11ce-8c82-00aa004ba90b}']
  679. Function GetBindInfo(grfBINDF : PDWORD; bindinfo : PBindInfo) : HResult; stdcall;
  680. Function GetBindString(ulStringType : ULONG; wzStr : POLEStr; cEl : ULONG; cElFetched : PULONG) : HResult; stdcall;
  681. end;
  682. PIInternetBindInfoRaw = ^IInternetBindInfoRaw;
  683. IInternetBindInfo = interface ['{79eac9e1-baf9-11ce-8c82-00aa004ba90b}']
  684. Function GetBindInfo(out grfBINDF : DWORD; var bindinfo : TBindInfo) : HResult; stdcall;
  685. Function GetBindString(ulStringType : ULONG; wzStr : POLEStr; cEl : ULONG; var cElFetched : ULONG) : HResult; stdcall;
  686. end;
  687. PIInternetBindInfo = ^IInternetBindInfo;
  688. IInternetProtocolRootRaw = interface ['{79eac9e3-baf9-11ce-8c82-00aa004ba90b}']
  689. Function Start(szUrl : LPCWSTR; OIProtSink : IInternetProtocolSink; OIBindInfo : IInternetBindInfo; grfPI, dwReserved : DWORD) : HResult; stdcall;
  690. Function Continue(const ProtocolData : TProtocolData) : HResult; stdcall;
  691. Function Abort(hrReason : HResult; dwOptions : DWORD) : HResult; stdcall;
  692. Function Terminate(dwOptions : DWORD) : HResult; stdcall;
  693. Function Suspend : HResult; stdcall;
  694. Function Resume : HResult; stdcall;
  695. end;
  696. PIInternetProtocolRootRaw = ^IInternetProtocolRootRaw;
  697. IInternetProtocolRoot = IInternetProtocolRootRaw;
  698. PIInternetProtocolRoot = PIInternetProtocolRootRaw;
  699. IInternetProtocolRaw = interface(IInternetProtocolRootRaw)['{79eac9e4-baf9-11ce-8c82-00aa004ba90b}']
  700. Function Read(pv : Pointer; cb : ULONG; cbRead : PULONG) : HResult; stdcall;
  701. Function Seek(dlibMove : LARGE_INTEGER; dwOrigin : DWORD; libNewPosition : PULARGE_INTEGER) : HResult; stdcall;
  702. Function LockRequest(dwOptions : DWORD) : HResult; stdcall;
  703. Function UnlockRequest : HResult; stdcall;
  704. end;
  705. PIInternetProtocolRaw = ^IInternetProtocolRaw;
  706. IInternetProtocol = interface(IInternetProtocolRoot)['{79eac9e4-baf9-11ce-8c82-00aa004ba90b}']
  707. Function Read(pv : Pointer; cb : ULONG; out cbRead : ULONG) : HResult; stdcall;
  708. Function Seek(dlibMove : LARGE_INTEGER; dwOrigin : DWORD; out libNewPosition : ULARGE_INTEGER) : HResult; stdcall;
  709. Function LockRequest(dwOptions : DWORD) : HResult; stdcall;
  710. Function UnlockRequest : HResult; stdcall;
  711. end;
  712. PIInternetProtocol = ^IInternetProtocol;
  713. IInternetProtocolSink = interface['{79eac9e5-baf9-11ce-8c82-00aa004ba90b}']
  714. Function Switch(const ProtocolData : TProtocolData) : HResult; stdcall;
  715. Function ReportProgress(ulStatusCode : ULONG; szStatusText : LPCWSTR) : HResult; stdcall;
  716. Function ReportData(grfBSCF : DWORD; ulProgress, ulProgressMax : ULONG) : HResult; stdcall;
  717. Function ReportResult(hrResult : HResult; dwError : DWORD; szResult : LPCWSTR) : HResult; stdcall;
  718. end;
  719. PIInternetProtocolSink = ^IInternetProtocolSink;
  720. IInternetProtocolSinkRaw = IInternetProtocolSink; // Because of the forward declaration, we must do it like this.
  721. PIInternetProtocolSinkRaw = PIInternetProtocolSink;
  722. IInternetSessionRaw = interface['{79eac9e7-baf9-11ce-8c82-00aa004ba90b}']
  723. Function RegisterNameSpace(CF : IClassFactory; const clsid : TCLSID; pwzProtocol : LPCWSTR; cPatterns : ULONG; const pwzPatterns : PLPCWSTR; dwReserved : DWORD) : HResult; stdcall;
  724. Function UnregisterNameSpace(CF : IClassFactory; pszProtocol : LPCWSTR) : HResult; stdcall;
  725. Function RegisterMimeFilter(CF : IClassFactory; const rclsid : TCLSID; pwzType : LPCWSTR) : HResult; stdcall;
  726. Function UnregisterMimeFilter(CF : IClassFactory; pwzType : LPCWSTR) : HResult; stdcall;
  727. Function CreateBinding(BC : IBindCtx; szUrl : LPCWSTR; UnkOuter : IUnknown; Unk : PIUnknown; OINetProt : PIInternetProtocol; dwOption : DWORD) : HResult; stdcall;
  728. Function SetSessionOption(dwOption : DWORD; pBuffer : Pointer; dwBufferLength : DWORD; dwReserved : DWORD) : HResult; stdcall;
  729. Function GetSessionOption(dwOption : DWORD; pBuffer : Pointer; dwBufferLength : PDWORD; dwReserved : DWORD) : HResult; stdcall;
  730. end;
  731. PIInternetSessionRaw = ^IInternetSessionRaw;
  732. IInternetSession = interface['{79eac9e7-baf9-11ce-8c82-00aa004ba90b}']
  733. Function RegisterNameSpace(CF : IClassFactory; const clsid : TCLSID; pwzProtocol : LPCWSTR; cPatterns : ULONG; const pwzPatterns : PLPCWSTR; dwReserved : DWORD) : HResult; stdcall;
  734. Function UnregisterNameSpace(CF : IClassFactory; pszProtocol : LPCWSTR) : HResult; stdcall;
  735. Function RegisterMimeFilter(CF : IClassFactory; const rclsid : TCLSID; pwzType : LPCWSTR) : HResult; stdcall;
  736. Function UnregisterMimeFilter(CF : IClassFactory; pwzType : LPCWSTR) : HResult; stdcall;
  737. Function CreateBinding(BC : IBindCtx; szUrl : LPCWSTR; UnkOuter : IUnknown; out Unk : IUnknown; out OINetProt : IInternetProtocol; dwOption : DWORD) : HResult; stdcall;
  738. Function SetSessionOption(dwOption : DWORD; pBuffer : Pointer; dwBufferLength : DWORD; dwReserved : DWORD) : HResult; stdcall;
  739. Function GetSessionOption(dwOption : DWORD; pBuffer : Pointer; var dwBufferLength : DWORD; dwReserved : DWORD) : HResult; stdcall;
  740. end;
  741. PIInternetSession = ^IInternetSession;
  742. IInternetThreadSwitchRaw = interface ['{79eac9e8-baf9-11ce-8c82-00aa004ba90b}']
  743. Function Prepare : HResult; stdcall;
  744. Function Continue : HResult; stdcall;
  745. end;
  746. PIInternetThreadSwitchRaw = ^IInternetThreadSwitchRaw;
  747. IInternetThreadSwitch = IInternetThreadSwitchRaw;
  748. PIInternetThreadSwitch = PIInternetThreadSwitchRaw;
  749. IInternetPriorityRaw = interface ['{79eac9eb-baf9-11ce-8c82-00aa004ba90b}']
  750. Function SetPriority(nPriority : Longint) : HResult; stdcall;
  751. Function GetPriority(nPriority : PLongint) : HResult; stdcall;
  752. end;
  753. PIInternetPriorityRaw = ^IInternetPriorityRaw;
  754. IInternetPriority = interface ['{79eac9eb-baf9-11ce-8c82-00aa004ba90b}']
  755. Function SetPriority(nPriority : Longint) : HResult; stdcall;
  756. Function GetPriority(out nPriority : Longint) : HResult; stdcall;
  757. end;
  758. PIInternetPriority = ^IInternetPriority;
  759. IInternetProtocolInfoRaw = interface ['{79eac9ec-baf9-11ce-8c82-00aa004ba90b}']
  760. Function ParseUrl(pwzUrl : LPCWSTR; ParseAction : TParseAction; dwParseFlags : DWORD; pwzResult : LPWSTR; cchResult : DWORD; pcchResult : DWORD; dwReserved : DWORD) : HResult; stdcall;
  761. Function CombineUrl(pwzBaseUrl, pwzRelativeUrl : LPCWSTR; dwCombineFlags : DWORD; pwzResult : LPWSTR; cchResult : DWORD; pcchResult : PDWORD; dwReserved : DWORD) : HResult; stdcall;
  762. Function CompareUrl(pwzUrl1, pwzUrl2 : LPCWSTR; dwCompareFlags : DWORD) : HResult; stdcall;
  763. Function QueryInfo(pwzUrl : LPCWSTR; QueryOption : TQueryOption; dwQueryFlags : DWORD; pBuffer : Pointer; cbBuffer : DWORD; cbBuf : PDWORD; dwReserved : DWORD) : HResult; stdcall;
  764. end;
  765. PIInternetProtocolInfoRaw = ^IInternetProtocolInfoRaw;
  766. IInternetProtocolInfo = interface ['{79eac9ec-baf9-11ce-8c82-00aa004ba90b}']
  767. Function ParseUrl(pwzUrl : LPCWSTR; ParseAction : TParseAction; dwParseFlags : DWORD; pwzResult : LPWSTR; cchResult : DWORD; pcchResult : DWORD; dwReserved : DWORD) : HResult; stdcall;
  768. Function CombineUrl(pwzBaseUrl, pwzRelativeUrl : LPCWSTR; dwCombineFlags : DWORD; pwzResult : LPWSTR; cchResult : DWORD; out pcchResult : DWORD; dwReserved : DWORD) : HResult; stdcall;
  769. Function CompareUrl(pwzUrl1, pwzUrl2 : LPCWSTR; dwCompareFlags : DWORD) : HResult; stdcall;
  770. Function QueryInfo(pwzUrl : LPCWSTR; QueryOption : TQueryOption; dwQueryFlags : DWORD; pBuffer : Pointer; cbBuffer : DWORD; var cbBuf : DWORD; dwReserved : DWORD) : HResult; stdcall;
  771. end;
  772. PIInternetProtocolInfo = ^IInternetProtocolInfo;
  773. IInternetSecurityMgrSiteRaw = interface ['{79eac9ed-baf9-11ce-8c82-00aa004ba90b}']
  774. Function GetWindow(hwnd : PHWnd) : HResult; stdcall;
  775. Function EnableModeless(fEnable : BOOL) : HResult; stdcall;
  776. end;
  777. PIInternetSecurityMgrSiteRaw = ^IInternetSecurityMgrSiteRaw;
  778. IInternetSecurityMgrSite = interface ['{79eac9ed-baf9-11ce-8c82-00aa004ba90b}']
  779. Function GetWindow(out hwnd : HWnd) : HResult; stdcall;
  780. Function EnableModeless(fEnable : BOOL) : HResult; stdcall;
  781. end;
  782. PIInternetSecurityMgrSite = ^IInternetSecurityMgrSite;
  783. IInternetSecurityManagerRaw = interface ['{79eac9ee-baf9-11ce-8c82-00aa004ba90b}']
  784. Function SetSecuritySite(Site : IInternetSecurityMgrSiteRaw) : HResult; stdcall;
  785. Function GetSecuritySite(Site : PIInternetSecurityMgrSiteRaw) : HResult; stdcall;
  786. Function MapUrlToZone(pwszUrl : LPCWSTR; dwZone : PDWORD; dwFlags : DWORD) : HResult; stdcall;
  787. Function GetSecurityId(pwszUrl : LPCWSTR; pbSecurityId : Pointer; cbSecurityId : PDWORD; dwReserved : DWORD) : HResult; stdcall;
  788. Function ProcessUrlAction(pwszUrl : LPCWSTR; dwAction : DWORD; pPolicy : Pointer; cbPolicy : DWORD; pContext : Pointer; cbContext : DWORD; dwFlags, dwReserved : DWORD) : HResult; stdcall;
  789. Function QueryCustomPolicy(pwszUrl : LPCWSTR; const guidKey : TGUID; out pPolicy : Pointer; cbPolicy : PDWORD; pContext : Pointer; cbContext : DWORD; dwReserved : DWORD) : HResult; stdcall;
  790. Function SetZoneMapping(dwZone : DWORD; lpszPattern : LPCWSTR; dwFlags : DWORD) : HResult; stdcall;
  791. Function GetZoneMappings(dwZone : DWORD; enumString : PIEnumString; dwFlags : DWORD) : HResult; stdcall;
  792. end;
  793. PIInternetSecurityManagerRaw = ^IInternetSecurityManagerRaw;
  794. IInternetSecurityManager = interface ['{79eac9ee-baf9-11ce-8c82-00aa004ba90b}']
  795. Function SetSecuritySite(Site : IInternetSecurityMgrSite) : HResult; stdcall;
  796. Function GetSecuritySite(out Site : IInternetSecurityMgrSite) : HResult; stdcall;
  797. Function MapUrlToZone(pwszUrl : LPCWSTR; out dwZone : DWORD; dwFlags : DWORD) : HResult; stdcall;
  798. Function GetSecurityId(pwszUrl : LPCWSTR; pbSecurityId : Pointer; var cbSecurityId : DWORD; dwReserved : DWORD) : HResult; stdcall;
  799. Function ProcessUrlAction(pwszUrl : LPCWSTR; dwAction : DWORD; pPolicy : Pointer; cbPolicy : DWORD; pContext : Pointer; cbContext : DWORD; dwFlags, dwReserved : DWORD) : HResult; stdcall;
  800. Function QueryCustomPolicy(pwszUrl : LPCWSTR; const guidKey : TGUID; out pPolicy : Pointer; out cbPolicy : DWORD; pContext : Pointer; cbContext : DWORD; dwReserved : DWORD) : HResult; stdcall;
  801. Function SetZoneMapping(dwZone : DWORD; lpszPattern : LPCWSTR; dwFlags : DWORD) : HResult; stdcall;
  802. Function GetZoneMappings(dwZone : DWORD; out enumString : IEnumString; dwFlags : DWORD) : HResult; stdcall;
  803. end;
  804. PIInternetSecurityManager = ^IInternetSecurityManager;
  805. IInternetHostSecurityManagerRaw = interface ['{3af280b6-cb3f-11d0-891e-00c04fb6bfc4}']
  806. Function GetSecurityId(pbSecurityId : Pointer; cbSecurityId : PDWORD; dwReserved : DWORD) : HResult; stdcall;
  807. Function ProcessUrlAction(dwAction : DWORD; pPolicy : Pointer; cbPolicy : DWORD; pContext : Pointer; cbContext, dwFlags, dwReserved : DWORD) : HResult; stdcall;
  808. Function QueryCustomPolicy(const guidKey : TGUID; pPolicy : PPointer; cbPolicy : PDWORD; pContext : Pointer; cbContext, dwReserved : DWORD) : HResult; stdcall;
  809. end;
  810. PIInternetHostSecurityManagerRaw = ^IInternetHostSecurityManagerRaw;
  811. IInternetHostSecurityManager = interface ['{3af280b6-cb3f-11d0-891e-00c04fb6bfc4}']
  812. Function GetSecurityId(pbSecurityId : Pointer; var cbSecurityId : DWORD; dwReserved : DWORD) : HResult; stdcall;
  813. Function ProcessUrlAction(dwAction : DWORD; pPolicy : Pointer; cbPolicy : DWORD; pContext : Pointer; cbContext, dwFlags, dwReserved : DWORD) : HResult; stdcall;
  814. Function QueryCustomPolicy(const guidKey : TGUID; out pPolicy : Pointer; out cbPolicy : DWORD; pContext : Pointer; cbContext, dwReserved : DWORD) : HResult; stdcall;
  815. end;
  816. PIInternetHostSecurityManager = ^IInternetHostSecurityManager;
  817. IInternetZoneManagerRaw = interface ['{79eac9ef-baf9-11ce-8c82-00aa004ba90b}']
  818. Function GetZoneAttributes(dwZone : DWORD; ZoneAttributes : PZoneAttributes) : HResult; stdcall;
  819. Function SetZoneAttributes(dwZone : DWORD; const ZoneAttributes : TZoneAttributes) : HResult; stdcall;
  820. Function GetZoneCustomPolicy(dwZone : DWORD; const guidKey : TGUID; pPolicy : PPointer; cbPolicy : PDWORD; urlZoneReg : TUrlZoneReg) : HResult; stdcall;
  821. Function SetZoneCustomPolicy(dwZone : DWORD; const guidKey : TGUID; pPolicy : Pointer; cbPolicy : DWORD; urlZoneReg : TUrlZoneReg) : HResult; stdcall;
  822. Function GetZoneActionPolicy(dwZone, dwAction : DWORD; pPolicy : Pointer; cbPolicy : DWORD; urlZoneReg : TUrlZoneReg) : HResult; stdcall;
  823. Function SetZoneActionPolicy(dwZone, dwAction : DWORD; pPolicy : Pointer; cbPolicy : DWORD; urlZoneReg : TUrlZoneReg) : HResult; stdcall;
  824. Function PromptAction(dwAction : DWORD; hwndParent : HWnd; pwszUrl, pwszText : LPCWSTR; dwPromptFlags : DWORD) : HResult; stdcall;
  825. Function LogAction(dwAction : DWORD; pwszUrl, pwszText : LPCWSTR; dwLogFlags : DWORD) : HResult; stdcall;
  826. Function CreateZoneEnumerator(dwEnum, dwCount : PDWORD; dwFlags : DWORD) : HResult; stdcall;
  827. Function GetZoneAt(dwEnum, dwIndex : DWORD; dwZone : PDWORD) : HResult; stdcall;
  828. Function DestroyZoneEnumerator(dwEnum : DWORD) : HResult; stdcall;
  829. Function CopyTemplatePoliciesToZone(dwTemplate, dwZone, dwReserved : DWORD) : HResult; stdcall;
  830. end;
  831. PIInternetZoneManagerRaw = ^IInternetZoneManagerRaw;
  832. IInternetZoneManager = interface ['{79eac9ef-baf9-11ce-8c82-00aa004ba90b}']
  833. Function GetZoneAttributes(dwZone : DWORD; var ZoneAttributes : TZoneAttributes) : HResult; stdcall;
  834. Function SetZoneAttributes(dwZone : DWORD; const ZoneAttributes : TZoneAttributes) : HResult; stdcall;
  835. Function GetZoneCustomPolicy(dwZone : DWORD; const guidKey : TGUID; out pPolicy : Pointer; out cbPolicy : DWORD; urlZoneReg : TUrlZoneReg) : HResult; stdcall;
  836. Function SetZoneCustomPolicy(dwZone : DWORD; const guidKey : TGUID; pPolicy : Pointer; cbPolicy : DWORD; urlZoneReg : TUrlZoneReg) : HResult; stdcall;
  837. Function GetZoneActionPolicy(dwZone, dwAction : DWORD; pPolicy : Pointer; cbPolicy : DWORD; urlZoneReg : TUrlZoneReg) : HResult; stdcall;
  838. Function SetZoneActionPolicy(dwZone, dwAction : DWORD; pPolicy : Pointer; cbPolicy : DWORD; urlZoneReg : TUrlZoneReg) : HResult; stdcall;
  839. Function PromptAction(dwAction : DWORD; hwndParent : HWnd; pwszUrl, pwszText : LPCWSTR; dwPromptFlags : DWORD) : HResult; stdcall;
  840. Function LogAction(dwAction : DWORD; pwszUrl, pwszText : LPCWSTR; dwLogFlags : DWORD) : HResult; stdcall;
  841. Function CreateZoneEnumerator(out dwEnum, dwCount : DWORD; dwFlags : DWORD) : HResult; stdcall;
  842. Function GetZoneAt(dwEnum, dwIndex : DWORD; out dwZone : DWORD) : HResult; stdcall;
  843. Function DestroyZoneEnumerator(dwEnum : DWORD) : HResult; stdcall;
  844. Function CopyTemplatePoliciesToZone(dwTemplate, dwZone, dwReserved : DWORD) : HResult; stdcall;
  845. end;
  846. PIInternetZoneManager = ^IInternetZoneManager;
  847. ISoftDistExtRaw = interface ['{B15B8DC1-C7E1-11d0-8680-00AA00BDCB71}']
  848. Function ProcessSoftDist(szCDFURL : LPCWSTR; SoftDistElement : Pointer; lpdsi : PSoftDistInfo) : HResult; stdcall;
  849. Function GetFirstCodeBase(szCodeBase : PLPWSTR;const dwMaxSize : DWORD) : HResult; stdcall;
  850. Function GetNextCodeBase(szCodeBase : PLPWSTR; const dwMaxSize : DWORD) : HResult; stdcall;
  851. Function AsyncInstallDistributionUnit(bc : IBindCtx; pvReserved : Pointer; flags : DWORD; const cbh : TCodeBaseHold) : HResult; stdcall;
  852. end;
  853. PISoftDistExtRaw = ^ISoftDistExtRaw;
  854. ISoftDistExt = interface ['{B15B8DC1-C7E1-11d0-8680-00AA00BDCB71}']
  855. Function ProcessSoftDist(szCDFURL : LPCWSTR; SoftDistElement : Pointer; var lpdsi : TSoftDistInfo) : HResult; stdcall;
  856. Function GetFirstCodeBase(var szCodeBase : LPWSTR;const dwMaxSize : DWORD) : HResult; stdcall;
  857. Function GetNextCodeBase(var szCodeBase : LPWSTR; const dwMaxSize : DWORD) : HResult; stdcall;
  858. Function AsyncInstallDistributionUnit(bc : IBindCtx; pvReserved : Pointer; flags : DWORD; const cbh : TCodeBaseHold) : HResult; stdcall;
  859. end;
  860. PISoftDistExt = ^ISoftDistExt;
  861. IDataFilterRaw = interface ['{69d14c80-c18e-11d0-a9ce-006097942311}']
  862. Function DoEncode(dwFlags : DWORD; lInBufferSize : Longint; pbInBuffer : Pointer; lOutBufferSize : Longint; pbOutBuffer : Pointer; lInBytesAvailable : Longint; lInBytesRead, lOutBytesWritten : PLongint; dwReserved : DWORD) : HResult; stdcall;
  863. Function DoDecode(dwFlags : DWORD; lInBufferSize : Longint; pbInBuffer : Pointer; lOutBufferSize : Longint; pbOutBuffer : Pointer; lInBytesAvailable : Longint; lInBytesRead, lOutBytesWritten : PLongint; dwReserved : DWORD) : HResult; stdcall;
  864. Function SetEncodingLevel(dwEncLevel : DWORD) : HResult; stdcall;
  865. end;
  866. PIDataFilterRaw = ^IDataFilterRaw;
  867. IDataFilter = interface ['{69d14c80-c18e-11d0-a9ce-006097942311}']
  868. Function DoEncode(dwFlags : DWORD; lInBufferSize : Longint; pbInBuffer : Pointer; lOutBufferSize : Longint; pbOutBuffer : Pointer; lInBytesAvailable : Longint; out lInBytesRead, lOutBytesWritten : Longint; dwReserved : DWORD) : HResult; stdcall;
  869. Function DoDecode(dwFlags : DWORD; lInBufferSize : Longint; pbInBuffer : Pointer; lOutBufferSize : Longint; pbOutBuffer : Pointer; lInBytesAvailable : Longint; out lInBytesRead, lOutBytesWritten : Longint; dwReserved : DWORD) : HResult; stdcall;
  870. Function SetEncodingLevel(dwEncLevel : DWORD) : HResult; stdcall;
  871. end;
  872. PIDataFilter = ^IDataFilter;
  873. IEncodingFilterFactoryRaw = interface ['{70bdde00-c18e-11d0-a9ce-006097942311}']
  874. Function FindBestFilter(pwzCodeIn, pwzCodeOut : LPCWSTR; info : TDataInfo; DF : PIDataFilterRaw) : HResult; stdcall;
  875. Function GetDefaultFilter(pwzCodeIn, pwzCodeOut : LPCWSTR; info : TDataInfo; DF : PIDataFilterRaw) : HResult; stdcall;
  876. end;
  877. PIEncodingFilterFactoryRaw = ^IEncodingFilterFactoryRaw;
  878. IEncodingFilterFactory = interface ['{70bdde00-c18e-11d0-a9ce-006097942311}']
  879. Function FindBestFilter(pwzCodeIn, pwzCodeOut : LPCWSTR; info : TDataInfo; out DF : IDataFilter) : HResult; stdcall;
  880. Function GetDefaultFilter(pwzCodeIn, pwzCodeOut : LPCWSTR; info : TDataInfo; out DF : IDataFilter) : HResult; stdcall;
  881. end;
  882. PIEncodingFilterFactory = ^IEncodingFilterFactory;
  883. Function CoGetClassObjectFromURL(const rCLASSID : TCLSID; szCODE : LPCWSTR; dwFileVersionMS, dwFileVersionLS : DWORD; szTYPE : LPCWSTR; pBindCtx : IBindCtx; dwClsContext : DWORD; pvReserved : Pointer; const riid : TGUID; ppv : pointer) : HResult; stdcall; external liburlmon;
  884. Function CoGetClassObjectFromURL(const rCLASSID : TCLSID; szCODE : LPCWSTR; dwFileVersionMS, dwFileVersionLS : DWORD; szTYPE : LPCWSTR; pBindCtx : IBindCtx; dwClsContext : DWORD; pvReserved : Pointer; const riid : TGUID; out ppv) : HResult; stdcall; external liburlmon;
  885. Function CoInternetCombineUrl(pwzBaseUrl, pwzRelativeUrl : LPCWSTR; dwCombineFlags : DWORD; pszResult : LPWSTR; cchResult : DWORD; pcchResult : PDWORD; dwReserved : DWORD) : HResult ; stdcall; external liburlmon;
  886. Function CoInternetCombineUrl(pwzBaseUrl, pwzRelativeUrl : LPCWSTR; dwCombineFlags : DWORD; pszResult : LPWSTR; cchResult : DWORD; var pcchResult : DWORD; dwReserved : DWORD) : HResult ; stdcall; external liburlmon;
  887. Function CoInternetCompareUrl(pwzUrl1, pwzUrl2 : LPCWSTR; dwFlags : DWORD) : HResult; stdcall; external liburlmon;
  888. Function CoInternetGetProtocolFlags(pwzUrl : LPCWSTR; dwFlags : PDWORD; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  889. Function CoInternetGetProtocolFlags(pwzUrl : LPCWSTR; var dwFlags : DWORD; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  890. Function CoInternetCreateSecurityManager(SP : IServiceProvider; SM : PIInternetSecurityManager; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  891. Function CoInternetCreateSecurityManager(SP : IServiceProvider; var SM : IInternetSecurityManager; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  892. Function CoInternetCreateZoneManager(SP : IServiceProvider; ZM : PIInternetZoneManager; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  893. Function CoInternetCreateZoneManager(SP : IServiceProvider; var ZM : IInternetZoneManager; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  894. Function CoInternetGetSecurityUrl(pwzUrl : LPCWSTR; pwzSecUrl : PLPWSTR; psuAction : TPSUAction; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  895. Function CoInternetGetSecurityUrl(pwzUrl : LPCWSTR; var pwzSecUrl : LPWSTR; psuAction : TPSUAction; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  896. Function CoInternetGetSession(dwSessionMode : DWORD; pIInternetSession : PIInternetSession; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  897. Function CoInternetGetSession(dwSessionMode : DWORD; var pIInternetSession : IInternetSession; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  898. Function CoInternetParseUrl(pwzUrl : LPCWSTR; ParseAction : TParseAction; dwFlags : DWORD; pszResult : LPWSTR; cchResult : DWORD; pcchResult : PDWORD; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  899. Function CoInternetParseUrl(pwzUrl : LPCWSTR; ParseAction : TParseAction; dwFlags : DWORD; pszResult : LPWSTR; cchResult : DWORD; var pcchResult : DWORD; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  900. Function CoInternetQueryInfo(pwzUrl : LPCWSTR; QueryOptions : TQueryOption; dwQueryFlags : DWORD; pvBuffer : Pointer; cbBuffer : DWORD; pcbBuffer : PDWORD; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  901. Function CoInternetQueryInfo(pwzUrl : LPCWSTR; QueryOptions : TQueryOption; dwQueryFlags : DWORD; pvBuffer : Pointer; cbBuffer : DWORD; var pcbBuffer : DWORD; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  902. Function CopyBindInfo(const cbiSrc : TBindInfo; biDest : PBindInfo) : HResult; stdcall; external liburlmon;
  903. Function CopyBindInfo(const cbiSrc : TBindInfo; var biDest : TBindInfo) : HResult; stdcall; external liburlmon;
  904. Function CopyStgMedium(const cstgmedSrc : TStgMedium; stgmedDest : PStgMedium) : HResult; stdcall; external liburlmon;
  905. Function CopyStgMedium(const cstgmedSrc : TStgMedium; var stgmedDest : TStgMedium) : HResult; stdcall; external liburlmon;
  906. Function CreateAsyncBindCtxEx(pbc : IBindCtx; dwOptions : DWORD; BSCb : IBindStatusCallback; Enum : IEnumFORMATETC; ppBC : PIBindCtx; reserved : DWORD) : HResult; stdcall; external liburlmon;
  907. Function CreateAsyncBindCtxEx(pbc : IBindCtx; dwOptions : DWORD; BSCb : IBindStatusCallback; Enum : IEnumFORMATETC; out ppBC : IBindCtx; reserved : DWORD) : HResult; stdcall; external liburlmon;
  908. Function CreateAsyncBindCtx(reserved : DWORD; pBSCb : IBindStatusCallback; pEFetc : IEnumFORMATETC; ppBC : PIBindCtx) : HResult; stdcall; external liburlmon;
  909. Function CreateAsyncBindCtx(reserved : DWORD; pBSCb : IBindStatusCallback; pEFetc : IEnumFORMATETC; out ppBC : IBindCtx) : HResult; stdcall; external liburlmon;
  910. Function CreateFormatEnumerator(cfmtetc : UINT; const rgfmtetc : TFormatEtc; ppenumfmtetc : PIEnumFormatEtc) : HResult; stdcall; external liburlmon;
  911. Function CreateFormatEnumerator(cfmtetc : UINT; const rgfmtetc : TFormatEtc; out ppenumfmtetc : IEnumFormatEtc) : HResult; stdcall; external liburlmon;
  912. Function CreateURLBinding(lpszUrl : LPCWSTR; pbc : IBindCtx; ppBdg : PIBinding) : HResult; stdcall; external liburlmon;
  913. Function CreateURLBinding(lpszUrl : LPCWSTR; pbc : IBindCtx; out ppBdg : IBinding) : HResult; stdcall; external liburlmon;
  914. Function CreateURLMoniker(MkCtx : IMoniker; szURL : LPCWSTR; mk : PIMoniker) : HResult; stdcall; external liburlmon;
  915. Function CreateURLMoniker(MkCtx : IMoniker; szURL : LPCWSTR; out mk : IMoniker) : HResult; stdcall; external liburlmon;
  916. Function FindMediaTypeClass(pBC : IBindCtx; szType : LPCSTR; const pclsID : TCLSID; reserved : DWORD) : HResult; stdcall; external liburlmon;
  917. Function FindMediaType(rgszTypes : LPCSTR; rgcfTypes : PClipFormat) : HResult; stdcall; external liburlmon;
  918. Function FindMimeFromData(pBC : IBindCtx; pwzUrl : LPCWSTR; pBuffer : Pointer; cbSize : DWORD; pwzMimeProposed : LPCWSTR; dwMimeFlags : DWORD; ppwzMimeOut : PLPWSTR; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  919. Function FindMimeFromData(pBC : IBindCtx; pwzUrl : LPCWSTR; pBuffer : Pointer; cbSize : DWORD; pwzMimeProposed : LPCWSTR; dwMimeFlags : DWORD; out ppwzMimeOut : LPWSTR; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  920. Function GetClassFileOrMime(pBC : IBindCtx; szFilename : LPCWSTR; pBuffer : Pointer; cbSize : DWORD; szMime : LPCWSTR; dwReserved : DWORD; pclsid : PCLSID) : HResult; stdcall; external liburlmon;
  921. Function GetClassFileOrMime(pBC : IBindCtx; szFilename : LPCWSTR; pBuffer : Pointer; cbSize : DWORD; szMime : LPCWSTR; dwReserved : DWORD; out pclsid : TCLSID) : HResult; stdcall; external liburlmon;
  922. Function GetClassURL(szURL : LPCWSTR; const ClsID : TCLSID) : HResult; stdcall; external liburlmon;
  923. Function GetSoftwareUpdateInfo(szDistUnit : LPCWSTR; var dsi : TSoftDistInfo) : HResult; stdcall; external liburlmon;
  924. Function HlinkGoBack(unk : IUnknown) : HResult; stdcall; external liburlmon;
  925. Function HlinkGoForward(unk : IUnknown) : HResult; stdcall; external liburlmon;
  926. Function HlinkNavigateMoniker(Unk : IUnknown; mkTarget : IMoniker) : HResult; stdcall; external liburlmon;
  927. Function HlinkNavigateString(unk : IUnknown; szTarget : LPCWSTR) : HResult; stdcall; external liburlmon;
  928. Function HlinkSimpleNavigateToMoniker( mkTarget : Imoniker; szLocation, szTargetFrameName : LPCWSTR; Unk : IUnknown; bc : IBindCtx; BSC : IBindStatusCallback; grfHLNF, dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  929. Function HlinkSimpleNavigateToString(szTarget, szLocation, szTargetFrameName : LPCWSTR; Unk : IUnknown; pbc : IBindCtx; BSC : IBindStatusCallback; grfHLNF, dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  930. Function IsAsyncMoniker(pmk : IMoniker) : HResult; stdcall; external liburlmon;
  931. Function IsLoggingEnabled(pszUrl : PAnsiChar) : BOOL; stdcall; external liburlmon name 'IsLoggingEnabledA';
  932. Function IsLoggingEnabledA(pszUrl : PAnsiChar) : BOOL; stdcall; external liburlmon;
  933. Function IsLoggingEnabledW(pszUrl : PWideChar) : BOOL; stdcall; external liburlmon;
  934. Function IsValidURL(pBC : IBindCtx; szURL : LPCWSTR; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  935. Function MkParseDisplayNameEx(pbc : IBindCtx; szDisplayName : LPCWSTR; pchEaten : PULONG; ppmk : PIMoniker) : HResult; stdcall; external liburlmon;
  936. Function MkParseDisplayNameEx(pbc : IBindCtx; szDisplayName : LPCWSTR; out pchEaten : ULONG; out ppmk : IMoniker) : HResult; stdcall; external liburlmon;
  937. Function ObtainUserAgentString(dwOption : DWORD; pszUAOut : LPSTR; cbSize : PDWORD) : HResult; stdcall; external liburlmon;
  938. Function ObtainUserAgentString(dwOption : DWORD; pszUAOut : LPSTR; var cbSize : DWORD) : HResult; stdcall; external liburlmon;
  939. Function RegisterBindStatusCallback(pBC : IBindCtx; pBSCb : IBindStatusCallback; ppBSCBPrev : PIBindStatusCallback; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  940. Function RegisterBindStatusCallback(pBC : IBindCtx; pBSCb : IBindStatusCallback; out ppBSCBPrev : IBindStatusCallback; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  941. Function RegisterFormatEnumerator(pBC : IBindCtx; pEFetc : IEnumFormatEtc; reserved : DWORD) : HResult; stdcall; external liburlmon;
  942. Function RegisterMediaTypeClass(pBC : IBindCtx; ctypes : UINT; const rgszTypes : LPCSTR; rgclsID : PCLSID; reserved : DWORD) : HResult; stdcall; external liburlmon;
  943. Function RegisterMediaTypes(ctypes : UINT; const rgszTypes : LPCSTR; const rgcfTypes : TClipFormat) : HResult; stdcall; external liburlmon;
  944. Function RevokeBindStatusCallback(pBC : IBindCtx; pBSCb : IBindStatusCallback) : HResult; stdcall; external liburlmon;
  945. Function RevokeFormatEnumerator(pBC : IBindCtx; pEFetc : IEnumFormatEtc) : HResult; stdcall; external liburlmon;
  946. Function SetSoftwareUpdateAdvertisementState(szDistUnit : LPCWSTR;dwAdState, dwAdvertisedVersionMS, dwAdvertisedVersionLS : DWORD) : HResult; stdcall; external liburlmon;
  947. Function URLDownloadToCacheFile(p1 : IUnknown; p2 : PAnsiChar; p3 : PChar; p4 : DWORD; p5 : DWORD; p6 : IBindStatusCallback) : HResult; stdcall; external liburlmon name 'URLDownloadToCacheFileA';
  948. Function URLDownloadToCacheFileA(p1 : IUnknown; p2 : PAnsiChar; p3 : PAnsiChar; p4 : DWORD; p5 : DWORD; p6 : IBindStatusCallback) : HResult; stdcall; external liburlmon;
  949. Function URLDownloadToCacheFileW(p1 : IUnknown; p2 : PWideChar; p3 : PWideChar; p4 : DWORD; p5 : DWORD; p6 : IBindStatusCallback) : HResult; stdcall; external liburlmon;
  950. Function URLDownloadToFile(Caller : IUnknown; URL : PAnsiChar; FileName : PChar; Reserved : DWORD; StatusCB : IBindStatusCallback) : HResult; stdcall; external liburlmon name 'URLDownloadToFileA';
  951. Function URLDownloadToFileA(Caller : IUnknown; URL : PAnsiChar; FileName : PAnsiChar; Reserved : DWORD; StatusCB : IBindStatusCallback) : HResult; stdcall; external liburlmon;
  952. Function URLDownloadToFileW(Caller : IUnknown; URL : PWideChar; FileName : PWideChar; Reserved : DWORD; StatusCB : IBindStatusCallback) : HResult; stdcall; external liburlmon;
  953. Function UrlMkGetSessionOption(dwOption : DWORD; pBuffer : Pointer; dwBufferLength : DWORD; pdwBufferLength : PDWORD; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  954. Function UrlMkGetSessionOption(dwOption : DWORD; pBuffer : Pointer; dwBufferLength : DWORD; out pdwBufferLength : DWORD; dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  955. Function UrlMkSetSessionOption(dwOption : DWORD; pBuffer : Pointer; dwBufferLength, dwReserved : DWORD) : HResult; stdcall; external liburlmon;
  956. Function URLOpenBlockingStream(p1 : IUnknown; p2 : PAnsiChar; p3 : PIStream; p4 : DWORD; p5 : IBindStatusCallback) : HResult; stdcall; external liburlmon name 'URLOpenBlockingStreamA';
  957. Function URLOpenBlockingStream(p1 : IUnknown; p2 : PAnsiChar; out p3 : IStream; p4 : DWORD; p5 : IBindStatusCallback) : HResult; stdcall; external liburlmon name 'URLOpenBlockingStreamA';
  958. Function URLOpenBlockingStreamA(p1 : IUnknown; p2 : PAnsiChar; p3 : PIStream; p4 : DWORD; p5 : IBindStatusCallback) : HResult; stdcall; external liburlmon;
  959. Function URLOpenBlockingStreamA(p1 : IUnknown; p2 : PAnsiChar; out p3 : IStream; p4 : DWORD; p5 : IBindStatusCallback) : HResult; stdcall; external liburlmon;
  960. Function URLOpenBlockingStreamW(p1 : IUnknown; p2 : PWideChar; p3 : PIStream; p4 : DWORD; p5 : IBindStatusCallback) : HResult; stdcall; external liburlmon;
  961. Function URLOpenBlockingStreamW(p1 : IUnknown; p2 : PWideChar; out p3 : IStream; p4 : DWORD; p5 : IBindStatusCallback) : HResult; stdcall; external liburlmon;
  962. Function URLOpenPullStream(p1 : IUnknown; p2 : PAnsiChar; p3 : DWORD; BSC : IBindStatusCallback) : HResult; stdcall; external liburlmon name 'URLOpenPullStreamA';
  963. Function URLOpenPullStreamA(p1 : IUnknown; p2 : PAnsiChar; p3 : DWORD; BSC : IBindStatusCallback) : HResult; stdcall; external liburlmon;
  964. Function URLOpenPullStreamW(p1 : IUnknown; p2 : PWideChar; p3 : DWORD; BSC : IBindStatusCallback) : HResult; stdcall; external liburlmon;
  965. Function URLOpenStream(p1 : IUnknown; p2 : PAnsiChar; p3 : DWORD; p4 : IBindStatusCallback) : HResult; stdcall; external liburlmon name 'URLOpenStreamA';
  966. Function URLOpenStreamA(p1 : IUnknown; p2 : PAnsiChar; p3 : DWORD; p4 : IBindStatusCallback) : HResult; stdcall; external liburlmon;
  967. Function URLOpenStreamW(p1 : IUnknown; p2 : PWideChar; p3 : DWORD; p4 : IBindStatusCallback) : HResult; stdcall; external liburlmon;
  968. Function WriteHitLogging(const Logginginfo : THIT_LOGGING_INFO) : BOOL; stdcall; external liburlmon;
  969. Procedure ReleaseBindInfo(const bindinfo : TBindInfo); stdcall; external liburlmon; external liburlmon;
  970. implementation
  971. end.