1 | (*******************************
|
---|
2 | * IECONST 1.01 (Jan 7, 2001) *
|
---|
3 | *******************************)
|
---|
4 |
|
---|
5 | unit IeConst;
|
---|
6 |
|
---|
7 | interface
|
---|
8 |
|
---|
9 | uses ShlObj, Activex, Windows;
|
---|
10 |
|
---|
11 |
|
---|
12 | const
|
---|
13 |
|
---|
14 |
|
---|
15 | STATURL_QUERYFLAG_ISCACHED = $00010000;
|
---|
16 | STATURL_QUERYFLAG_NOURL = $00020000;
|
---|
17 | STATURL_QUERYFLAG_NOTITLE = $00040000;
|
---|
18 | STATURL_QUERYFLAG_TOPLEVEL = $00080000;
|
---|
19 |
|
---|
20 | STATURLFLAG_ISCACHED = $00000001;
|
---|
21 | STATURLFLAG_ISTOPLEVEL = $00000002;
|
---|
22 |
|
---|
23 |
|
---|
24 | IID_IEnumStatUrl: TGUID = (D1: $3C374A42; D2: $BAE4; D3: $11CF; D4: ($BF, $7D, $00, $AA, $00, $69, $46, $EE));
|
---|
25 | IID_IUrlHistoryStg: TGUID = (D1: $3C374A41; D2: $BAE4; D3: $11CF; D4: ($BF, $7D, $00, $AA, $00, $69, $46, $EE));
|
---|
26 | IID_IUrlHistoryStg2: TGUID = (D1: $AFA0DC11; D2: $C313; D3: $831A; D4: ($83, $1A, $00, $C0, $4F, $D5, $AE, $38));
|
---|
27 | IID_IUrlHistoryNotify: TGUID = (D1: $BC40BEC1; D2: $C493; D3: $11D0; D4: ($83, $1B, $00, $C0, $4F, $D5, $AE, $38));
|
---|
28 |
|
---|
29 | SID_IEnumStatUrl = '{3C374A42-BAE4-11CF-BF7D-00AA006946EE}';
|
---|
30 | SID_IUrlHistoryStg = '{3C374A41-BAE4-11CF-BF7D-00AA006946EE}';
|
---|
31 | SID_IUrlHistoryStg2 = '{AFA0DC11-C313-11d0-831A-00C04FD5AE38}';
|
---|
32 | SID_IURLHistoryNotify = '{BC40BEC1-C493-11d0-831B-00C04FD5AE38}';
|
---|
33 | CLSID_CUrlHistory: TGUID = '{3C374A40-BAE4-11CF-BF7D-00AA006946EE}';
|
---|
34 |
|
---|
35 |
|
---|
36 | IID_IDocHostUIHandler: TGUID = '{bd3f23c0-d43e-11cf-893b-00aa00bdce1a}';
|
---|
37 | IID_IDocHostUIHandler2: TGUID = '{3050f6d0-98b5-11cf-bb82-00aa00bdce0b}';
|
---|
38 | IID_IDocHostShowUI: TGUID = '{c4d244b0-d43e-11cf-893b-00aa00bdce1a}';
|
---|
39 | GUID_TriEditCommandGroup: TGUID = '{2582F1C0-084E-11d1-9A0E-006097C9B344}';
|
---|
40 | CMDSETID_Forms3: TGUID = '{DE4BA900-59CA-11CF-9592-444553540000}';
|
---|
41 |
|
---|
42 | IID_IQueryInfo: TGUID = (D1: $00021500; D2: $0000; D3: $0000; D4: ($C0, $00, $00, $00, $00, $00, $00, $46));
|
---|
43 |
|
---|
44 | MSOCMDF_SUPPORTED = OLECMDF_SUPPORTED;
|
---|
45 | MSOCMDF_ENABLED = OLECMDF_ENABLED;
|
---|
46 |
|
---|
47 | MSOCMDEXECOPT_PROMPTUSER = OLECMDEXECOPT_PROMPTUSER;
|
---|
48 | MSOCMDEXECOPT_DONTPROMPTUSER = OLECMDEXECOPT_DONTPROMPTUSER;
|
---|
49 |
|
---|
50 | InchToMetric = 25.4;
|
---|
51 |
|
---|
52 | NO_COMMAND = 0;
|
---|
53 | VIEW_COMMAND = 1;
|
---|
54 | EXPLORE_COMMAND = 2;
|
---|
55 | FIND_COMMAND = 3;
|
---|
56 |
|
---|
57 | ISDigit = ['0'..'9', '-', '+'];
|
---|
58 |
|
---|
59 | CONTEXT_MENU_DEFAULT = 0;
|
---|
60 | CONTEXT_MENU_IMAGE = 1;
|
---|
61 | CONTEXT_MENU_CONTROL = 2;
|
---|
62 | CONTEXT_MENU_TABLE = 3;
|
---|
63 | // in browse mode
|
---|
64 | CONTEXT_MENU_TEXTSELECT = 4;
|
---|
65 | CONTEXT_MENU_ANCHOR = 5;
|
---|
66 | CONTEXT_MENU_UNKNOWN = 6;
|
---|
67 | // These 2 are mapped to IMAGE for the public")
|
---|
68 | CONTEXT_MENU_IMGDYNSRC = 7;
|
---|
69 | CONTEXT_MENU_IMGART = 8;
|
---|
70 | CONTEXT_MENU_DEBUG = 9;
|
---|
71 | CONTEXT_MENU_VSCROLL = 10;
|
---|
72 | CONTEXT_MENU_HSCROLL = 11;
|
---|
73 |
|
---|
74 | DISPID_AMBIENT_DLCONTROL = (-5512);
|
---|
75 | DISPID_AMBIENT_USERAGENT = (-5513);
|
---|
76 |
|
---|
77 | HTMLID_FIND = 1;
|
---|
78 | HTMLID_VIEWSOURCE = 2;
|
---|
79 | HTMLID_OPTIONS = 3;
|
---|
80 |
|
---|
81 | DOCHOSTUITYPE_BROWSE = 0;
|
---|
82 | DOCHOSTUITYPE_AUTHOR = 1;
|
---|
83 |
|
---|
84 | DOCHOSTUIDBLCLK_DEFAULT = 0;
|
---|
85 | DOCHOSTUIDBLCLK_SHOWPROPERTIES = 1;
|
---|
86 | DOCHOSTUIDBLCLK_SHOWCODE = 2;
|
---|
87 |
|
---|
88 | DOCHOSTUIFLAG_DIALOG = $0001;
|
---|
89 | DOCHOSTUIFLAG_DISABLE_HELP_MENU = $0002;
|
---|
90 | DOCHOSTUIFLAG_NO3DBORDER = $0004;
|
---|
91 | DOCHOSTUIFLAG_SCROLL_NO = $0008;
|
---|
92 | DOCHOSTUIFLAG_DISABLE_SCRIPT_INACTIVE = $0010;
|
---|
93 | DOCHOSTUIFLAG_OPENNEWWIN = $0020;
|
---|
94 | DOCHOSTUIFLAG_DISABLE_OFFSCREEN = $0040;
|
---|
95 | DOCHOSTUIFLAG_FLAT_SCROLLBAR = $0080;
|
---|
96 | DOCHOSTUIFLAG_DIV_BLOCKDEFAULT = $0100;
|
---|
97 | DOCHOSTUIFLAG_ACTIVATE_CLIENTHIT_ONLY = $0200;
|
---|
98 | DOCHOSTUIFLAG_OVERRIDEBEHAVIORFACTORY = $0400;
|
---|
99 | DOCHOSTUIFLAG_CODEPAGELINKEDFONTS = $0800;
|
---|
100 | DOCHOSTUIFLAG_URL_ENCODING_DISABLE_UTF8 = $1000;
|
---|
101 | DOCHOSTUIFLAG_URL_ENCODING_ENABLE_UTF8 = $2000;
|
---|
102 | DOCHOSTUIFLAG_ENABLE_FORMS_AUTOCOMPLETE = $4000;
|
---|
103 | DOCHOSTUIFLAG_ENABLE_INPLACE_NAVIGATION = $10000;
|
---|
104 | DOCHOSTUIFLAG_IME_ENABLE_RECONVERSION = $20000;
|
---|
105 |
|
---|
106 | IDM_UNKNOWN = 0;
|
---|
107 | IDM_ALIGNBOTTOM = 1;
|
---|
108 | IDM_ALIGNHORIZONTALCENTERS = 2;
|
---|
109 | IDM_ALIGNLEFT = 3;
|
---|
110 | IDM_ALIGNRIGHT = 4;
|
---|
111 | IDM_ALIGNTOGRID = 5;
|
---|
112 | IDM_ALIGNTOP = 6;
|
---|
113 | IDM_ALIGNVERTICALCENTERS = 7;
|
---|
114 | IDM_ARRANGEBOTTOM = 8;
|
---|
115 | IDM_ARRANGERIGHT = 9;
|
---|
116 | IDM_BRINGFORWARD = 10;
|
---|
117 | IDM_BRINGTOFRONT = 11;
|
---|
118 | IDM_CENTERHORIZONTALLY = 12;
|
---|
119 | IDM_CENTERVERTICALLY = 13;
|
---|
120 | IDM_CODE = 14;
|
---|
121 | IDM_DELETE = 17;
|
---|
122 | IDM_FONTNAME = 18;
|
---|
123 | IDM_FONTSIZE = 19;
|
---|
124 | IDM_GROUP = 20;
|
---|
125 | IDM_HORIZSPACECONCATENATE = 21;
|
---|
126 | IDM_HORIZSPACEDECREASE = 22;
|
---|
127 | IDM_HORIZSPACEINCREASE = 23;
|
---|
128 | IDM_HORIZSPACEMAKEEQUAL = 24;
|
---|
129 | IDM_INSERTOBJECT = 25;
|
---|
130 | IDM_MULTILEVELREDO = 30;
|
---|
131 | IDM_SENDBACKWARD = 32;
|
---|
132 | IDM_SENDTOBACK = 33;
|
---|
133 | IDM_SHOWTABLE = 34;
|
---|
134 | IDM_SIZETOCONTROL = 35;
|
---|
135 | IDM_SIZETOCONTROLHEIGHT = 36;
|
---|
136 | IDM_SIZETOCONTROLWIDTH = 37;
|
---|
137 | IDM_SIZETOFIT = 38;
|
---|
138 | IDM_SIZETOGRID = 39;
|
---|
139 | IDM_SNAPTOGRID = 40;
|
---|
140 | IDM_TABORDER = 41;
|
---|
141 | IDM_TOOLBOX = 42;
|
---|
142 | IDM_MULTILEVELUNDO = 44;
|
---|
143 | IDM_UNGROUP = 45;
|
---|
144 | IDM_VERTSPACECONCATENATE = 46;
|
---|
145 | IDM_VERTSPACEDECREASE = 47;
|
---|
146 | IDM_VERTSPACEINCREASE = 48;
|
---|
147 | IDM_VERTSPACEMAKEEQUAL = 49;
|
---|
148 | IDM_JUSTIFYFULL = 50;
|
---|
149 | IDM_BACKCOLOR = 51;
|
---|
150 | IDM_BOLD = 52;
|
---|
151 | IDM_BORDERCOLOR = 53;
|
---|
152 | IDM_FLAT = 54;
|
---|
153 | IDM_FORECOLOR = 55;
|
---|
154 | IDM_ITALIC = 56;
|
---|
155 | IDM_JUSTIFYCENTER = 57;
|
---|
156 | IDM_JUSTIFYGENERAL = 58;
|
---|
157 | IDM_JUSTIFYLEFT = 59;
|
---|
158 | IDM_JUSTIFYRIGHT = 60;
|
---|
159 | IDM_RAISED = 61;
|
---|
160 | IDM_SUNKEN = 62;
|
---|
161 | IDM_UNDERLINE = 63;
|
---|
162 | IDM_CHISELED = 64;
|
---|
163 | IDM_ETCHED = 65;
|
---|
164 | IDM_SHADOWED = 66;
|
---|
165 | IDM_FIND = 67;
|
---|
166 | IDM_SHOWGRID = 69;
|
---|
167 | IDM_OBJECTVERBLIST0 = 72;
|
---|
168 | IDM_OBJECTVERBLIST1 = 73;
|
---|
169 | IDM_OBJECTVERBLIST2 = 74;
|
---|
170 | IDM_OBJECTVERBLIST3 = 75;
|
---|
171 | IDM_OBJECTVERBLIST4 = 76;
|
---|
172 | IDM_OBJECTVERBLIST5 = 77;
|
---|
173 | IDM_OBJECTVERBLIST6 = 78;
|
---|
174 | IDM_OBJECTVERBLIST7 = 79;
|
---|
175 | IDM_OBJECTVERBLIST8 = 80;
|
---|
176 | IDM_OBJECTVERBLIST9 = 81;
|
---|
177 | IDM_CONVERTOBJECT = 82;
|
---|
178 | IDM_CUSTOMCONTROL = 83;
|
---|
179 | IDM_CUSTOMIZEITEM = 84;
|
---|
180 | IDM_RENAME = 85;
|
---|
181 | IDM_IMPORT = 86;
|
---|
182 | IDM_NEWPAGE = 87;
|
---|
183 | IDM_MOVE = 88;
|
---|
184 | IDM_CANCEL = 89;
|
---|
185 | IDM_FONT = 90;
|
---|
186 | IDM_STRIKETHROUGH = 91;
|
---|
187 | IDM_DELETEWORD = 92;
|
---|
188 |
|
---|
189 | IDM_FOLLOW_ANCHOR = 2008;
|
---|
190 |
|
---|
191 | IDM_INSINPUTIMAGE = 2114;
|
---|
192 | IDM_INSINPUTBUTTON = 2115;
|
---|
193 | IDM_INSINPUTRESET = 2116;
|
---|
194 | IDM_INSINPUTSUBMIT = 2117;
|
---|
195 | IDM_INSINPUTUPLOAD = 2118;
|
---|
196 | IDM_INSFIELDSET = 2119;
|
---|
197 |
|
---|
198 | IDM_PASTEINSERT = 2120;
|
---|
199 | IDM_REPLACE = 2121;
|
---|
200 | IDM_EDITSOURCE = 2122;
|
---|
201 | IDM_BOOKMARK = 2123;
|
---|
202 | IDM_HYPERLINK = 2124;
|
---|
203 | IDM_UNLINK = 2125;
|
---|
204 | IDM_BROWSEMODE = 2126;
|
---|
205 | IDM_EDITMODE = 2127;
|
---|
206 | IDM_UNBOOKMARK = 2128;
|
---|
207 |
|
---|
208 | IDM_TOOLBARS = 2130;
|
---|
209 | IDM_STATUSBAR = 2131;
|
---|
210 | IDM_FORMATMARK = 2132;
|
---|
211 | IDM_TEXTONLY = 2133;
|
---|
212 | IDM_OPTIONS = 2135;
|
---|
213 | IDM_FOLLOWLINKC = 2136;
|
---|
214 | IDM_FOLLOWLINKN = 2137;
|
---|
215 | IDM_VIEWSOURCE = 2139;
|
---|
216 | IDM_ZOOMPOPUP = 2140;
|
---|
217 |
|
---|
218 | // IDM_BASELINEFONT1, IDM_BASELINEFONT2, IDM_BASELINEFONT3, IDM_BASELINEFONT4,
|
---|
219 | // and IDM_BASELINEFONT5 should be consecutive integers;
|
---|
220 | //
|
---|
221 | IDM_BASELINEFONT1 = 2141;
|
---|
222 | IDM_BASELINEFONT2 = 2142;
|
---|
223 | IDM_BASELINEFONT3 = 2143;
|
---|
224 | IDM_BASELINEFONT4 = 2144;
|
---|
225 | IDM_BASELINEFONT5 = 2145;
|
---|
226 |
|
---|
227 | IDM_HORIZONTALLINE = 2150;
|
---|
228 | IDM_LINEBREAKNORMAL = 2151;
|
---|
229 | IDM_LINEBREAKLEFT = 2152;
|
---|
230 | IDM_LINEBREAKRIGHT = 2153;
|
---|
231 | IDM_LINEBREAKBOTH = 2154;
|
---|
232 | IDM_NONBREAK = 2155;
|
---|
233 | IDM_SPECIALCHAR = 2156;
|
---|
234 | IDM_HTMLSOURCE = 2157;
|
---|
235 | IDM_IFRAME = 2158;
|
---|
236 | IDM_HTMLCONTAIN = 2159;
|
---|
237 | IDM_TEXTBOX = 2161;
|
---|
238 | IDM_TEXTAREA = 2162;
|
---|
239 | IDM_CHECKBOX = 2163;
|
---|
240 | IDM_RADIOBUTTON = 2164;
|
---|
241 | IDM_DROPDOWNBOX = 2165;
|
---|
242 | IDM_LISTBOX = 2166;
|
---|
243 | IDM_BUTTON = 2167;
|
---|
244 | IDM_IMAGE = 2168;
|
---|
245 | IDM_OBJECT = 2169;
|
---|
246 | IDM_1D = 2170;
|
---|
247 | IDM_IMAGEMAP = 2171;
|
---|
248 | IDM_FILE = 2172;
|
---|
249 | IDM_COMMENT = 2173;
|
---|
250 | IDM_SCRIPT = 2174;
|
---|
251 | IDM_JAVAAPPLET = 2175;
|
---|
252 | IDM_PLUGIN = 2176;
|
---|
253 | IDM_PAGEBREAK = 2177;
|
---|
254 |
|
---|
255 | IDM_PARAGRAPH = 2180;
|
---|
256 | IDM_FORM = 2181;
|
---|
257 | IDM_MARQUEE = 2182;
|
---|
258 | IDM_LIST = 2183;
|
---|
259 | IDM_ORDERLIST = 2184;
|
---|
260 | IDM_UNORDERLIST = 2185;
|
---|
261 | IDM_INDENT = 2186;
|
---|
262 | IDM_OUTDENT = 2187;
|
---|
263 | IDM_PREFORMATTED = 2188;
|
---|
264 | IDM_ADDRESS = 2189;
|
---|
265 | IDM_BLINK = 2190;
|
---|
266 | IDM_DIV = 2191;
|
---|
267 |
|
---|
268 | IDM_TABLEINSERT = 2200;
|
---|
269 | IDM_RCINSERT = 2201;
|
---|
270 | IDM_CELLINSERT = 2202;
|
---|
271 | IDM_CAPTIONINSERT = 2203;
|
---|
272 | IDM_CELLMERGE = 2204;
|
---|
273 | IDM_CELLSPLIT = 2205;
|
---|
274 | IDM_CELLSELECT = 2206;
|
---|
275 | IDM_ROWSELECT = 2207;
|
---|
276 | IDM_COLUMNSELECT = 2208;
|
---|
277 | IDM_TABLESELECT = 2209;
|
---|
278 | IDM_TABLEPROPERTIES = 2210;
|
---|
279 | IDM_CELLPROPERTIES = 2211;
|
---|
280 | IDM_ROWINSERT = 2212;
|
---|
281 | IDM_COLUMNINSERT = 2213;
|
---|
282 |
|
---|
283 | IDM_HELP_CONTENT = 2220;
|
---|
284 | IDM_HELP_ABOUT = 2221;
|
---|
285 | IDM_HELP_README = 2222;
|
---|
286 |
|
---|
287 | IDM_REMOVEFORMAT = 2230;
|
---|
288 | IDM_PAGEINFO = 2231;
|
---|
289 | IDM_TELETYPE = 2232;
|
---|
290 | IDM_GETBLOCKFMTS = 2233;
|
---|
291 | IDM_BLOCKFMT = 2234;
|
---|
292 | IDM_SHOWHIDE_CODE = 2235;
|
---|
293 | IDM_TABLE = 2236;
|
---|
294 |
|
---|
295 | IDM_COPYFORMAT = 2237;
|
---|
296 | IDM_PASTEFORMAT = 2238;
|
---|
297 | IDM_GOTO = 2239;
|
---|
298 |
|
---|
299 | IDM_CHANGEFONT = 2240;
|
---|
300 | IDM_CHANGEFONTSIZE = 2241;
|
---|
301 | IDM_INCFONTSIZE = 2242;
|
---|
302 | IDM_DECFONTSIZE = 2243;
|
---|
303 | IDM_INCFONTSIZE1PT = 2244;
|
---|
304 | IDM_DECFONTSIZE1PT = 2245;
|
---|
305 | IDM_CHANGECASE = 2246;
|
---|
306 | IDM_SUBSCRIPT = 2247;
|
---|
307 | IDM_SUPERSCRIPT = 2248;
|
---|
308 | IDM_SHOWSPECIALCHAR = 2249;
|
---|
309 |
|
---|
310 | IDM_CENTERALIGNPARA = 2250;
|
---|
311 | IDM_LEFTALIGNPARA = 2251;
|
---|
312 | IDM_RIGHTALIGNPARA = 2252;
|
---|
313 | IDM_REMOVEPARAFORMAT = 2253;
|
---|
314 | IDM_APPLYNORMAL = 2254;
|
---|
315 | IDM_APPLYHEADING1 = 2255;
|
---|
316 | IDM_APPLYHEADING2 = 2256;
|
---|
317 | IDM_APPLYHEADING3 = 2257;
|
---|
318 |
|
---|
319 | IDM_DOCPROPERTIES = 2260;
|
---|
320 | IDM_ADDFAVORITES = 2261;
|
---|
321 | IDM_COPYSHORTCUT = 2262;
|
---|
322 | IDM_SAVEBACKGROUND = 2263;
|
---|
323 | IDM_SETWALLPAPER = 2264;
|
---|
324 | IDM_COPYBACKGROUND = 2265;
|
---|
325 | IDM_CREATESHORTCUT = 2266;
|
---|
326 | IDM_PAGE = 2267;
|
---|
327 | IDM_SAVETARGET = 2268;
|
---|
328 | IDM_SHOWPICTURE = 2269;
|
---|
329 | IDM_SAVEPICTURE = 2270;
|
---|
330 | IDM_DYNSRCPLAY = 2271;
|
---|
331 | IDM_DYNSRCSTOP = 2272;
|
---|
332 | IDM_PRINTTARGET = 2273;
|
---|
333 | IDM_IMGARTPLAY = 2274;
|
---|
334 | IDM_IMGARTSTOP = 2275;
|
---|
335 | IDM_IMGARTREWIND = 2276;
|
---|
336 | IDM_PRINTQUERYJOBSPENDING = 2277;
|
---|
337 |
|
---|
338 | IDM_CONTEXTMENU = 2280;
|
---|
339 | IDM_GOBACKWARD = 2282;
|
---|
340 | IDM_GOFORWARD = 2283;
|
---|
341 | IDM_PRESTOP = 2284;
|
---|
342 |
|
---|
343 | IDM_CREATELINK = 2290;
|
---|
344 | IDM_COPYCONTENT = 2291;
|
---|
345 |
|
---|
346 | IDM_LANGUAGE = 2292;
|
---|
347 |
|
---|
348 | IDM_REFRESH = 2300;
|
---|
349 | IDM_STOPDOWNLOAD = 2301;
|
---|
350 |
|
---|
351 | IDM_ENABLE_INTERACTION = 2302;
|
---|
352 |
|
---|
353 | IDM_LAUNCHDEBUGGER = 2310;
|
---|
354 | IDM_BREAKATNEXT = 2311;
|
---|
355 |
|
---|
356 | IDM_INSINPUTHIDDEN = 2312;
|
---|
357 | IDM_INSINPUTPASSWORD = 2313;
|
---|
358 |
|
---|
359 | IDM_OVERWRITE = 2314;
|
---|
360 |
|
---|
361 | IDM_PARSECOMPLETE = 2315;
|
---|
362 |
|
---|
363 | IDM_HTMLEDITMODE = 2316;
|
---|
364 |
|
---|
365 | IDM_REGISTRYREFRESH = 2317;
|
---|
366 | IDM_COMPOSESETTINGS = 2318;
|
---|
367 |
|
---|
368 | IDM_SHOWALLTAGS = 2320;
|
---|
369 | IDM_SHOWALIGNEDSITETAGS = 2321;
|
---|
370 | IDM_SHOWSCRIPTTAGS = 2322;
|
---|
371 | IDM_SHOWSTYLETAGS = 2323;
|
---|
372 | IDM_SHOWCOMMENTTAGS = 2324;
|
---|
373 | IDM_SHOWAREATAGS = 2325;
|
---|
374 | IDM_SHOWUNKNOWNTAGS = 2326;
|
---|
375 | IDM_SHOWMISCTAGS = 2327;
|
---|
376 | IDM_SHOWZEROBORDERATDESIGNTIME = 2328;
|
---|
377 |
|
---|
378 | IDM_AUTODETECT = 2329;
|
---|
379 |
|
---|
380 | IDM_SCRIPTDEBUGGER = 2330;
|
---|
381 |
|
---|
382 | IDM_GETBYTESDOWNLOADED = 2331;
|
---|
383 |
|
---|
384 | IDM_NOACTIVATENORMALOLECONTROLS = 2332;
|
---|
385 | IDM_NOACTIVATEDESIGNTIMECONTROLS = 2333;
|
---|
386 | IDM_NOACTIVATEJAVAAPPLETS = 2334;
|
---|
387 |
|
---|
388 | IDM_SHOWWBRTAGS = 2340;
|
---|
389 |
|
---|
390 | IDM_PERSISTSTREAMSYNC = 2341;
|
---|
391 | IDM_SETDIRTY = 2342;
|
---|
392 |
|
---|
393 |
|
---|
394 | IDM_MIMECSET__FIRST__ = 3609;
|
---|
395 | IDM_MIMECSET__LAST__ = 3640;
|
---|
396 |
|
---|
397 | IDM_MENUEXT_FIRST__ = 3700;
|
---|
398 | IDM_MENUEXT_LAST__ = 3732;
|
---|
399 | IDM_MENUEXT_COUNT = 3733;
|
---|
400 |
|
---|
401 | ID_EDITMODE = 32801;
|
---|
402 |
|
---|
403 | IDM_OPEN = 2000;
|
---|
404 | IDM_NEW = 2001;
|
---|
405 | IDM_SAVE = 70;
|
---|
406 | IDM_SAVEAS = 71;
|
---|
407 | IDM_SAVECOPYAS = 2002;
|
---|
408 | IDM_PRINTPREVIEW = 2003;
|
---|
409 | IDM_PRINT = 27;
|
---|
410 | IDM_PAGESETUP = 2004;
|
---|
411 | IDM_SPELL = 2005;
|
---|
412 | IDM_PASTESPECIAL = 2006;
|
---|
413 | IDM_CLEARSELECTION = 2007;
|
---|
414 | IDM_PROPERTIES = 28;
|
---|
415 | IDM_REDO = 29;
|
---|
416 | IDM_UNDO = 43;
|
---|
417 | IDM_SELECTALL = 31;
|
---|
418 | IDM_ZOOMPERCENT = 50;
|
---|
419 | IDM_GETZOOM = 68;
|
---|
420 | IDM_STOP = 2138;
|
---|
421 | IDM_COPY = 15;
|
---|
422 | IDM_CUT = 16;
|
---|
423 | IDM_PASTE = 26;
|
---|
424 |
|
---|
425 | IDM_TRIED_IS_1D_ELEMENT = 0; //[out,VT_BOOL]
|
---|
426 | IDM_TRIED_IS_2D_ELEMENT = 1; //[out,VT_BOOL]
|
---|
427 | IDM_TRIED_NUDGE_ELEMENT = 2; //[in,VT_BYREF VARIANT.byref=LPPOINT]
|
---|
428 | IDM_TRIED_SET_ALIGNMENT = 3; //[in,VT_BYREF VARIANT.byref=LPPOINT]
|
---|
429 | IDM_TRIED_MAKE_ABSOLUTE = 4;
|
---|
430 | IDM_TRIED_LOCK_ELEMENT = 5;
|
---|
431 | IDM_TRIED_SEND_TO_BACK = 6;
|
---|
432 | IDM_TRIED_SEND_TO_FRONT = 7;
|
---|
433 | IDM_TRIED_SEND_BACKWARD = 8;
|
---|
434 | IDM_TRIED_SEND_FORWARD = 9;
|
---|
435 | IDM_TRIED_SEND_BEHIND_1D = 10;
|
---|
436 | IDM_TRIED_SEND_FRONT_1D = 11;
|
---|
437 | IDM_TRIED_CONSTRAIN = 12; //[in,VT_BOOL]
|
---|
438 | IDM_TRIED_SET_2D_DROP_MODE = 13; //[in,VT_BOOL]
|
---|
439 | IDM_TRIED_INSERTROW = 14;
|
---|
440 | IDM_TRIED_INSERTCOL = 15;
|
---|
441 | IDM_TRIED_DELETEROWS = 16;
|
---|
442 | IDM_TRIED_DELETECOLS = 17;
|
---|
443 | IDM_TRIED_MERGECELLS = 18;
|
---|
444 | IDM_TRIED_SPLITCELL = 19;
|
---|
445 | IDM_TRIED_INSERTCELL = 20;
|
---|
446 | IDM_TRIED_DELETECELLS = 21;
|
---|
447 | IDM_TRIED_INSERTTABLE = 22; //[in, VT_ARRAY]
|
---|
448 |
|
---|
449 | //WARNING WARNING WARNING!!! Don't forget to modify IDM_TRIED_LAST_CID
|
---|
450 | //when you add new Command IDs
|
---|
451 |
|
---|
452 | IDM_TRIED_LAST_CID = IDM_TRIED_INSERTTABLE;
|
---|
453 |
|
---|
454 |
|
---|
455 |
|
---|
456 |
|
---|
457 | CLSID_WebBrowser: TGUID = '{ED016940-BD5B-11cf-BA4E-00C04FD70816}';
|
---|
458 |
|
---|
459 | type
|
---|
460 |
|
---|
461 | STATURL = record
|
---|
462 | cbSize: DWORD;
|
---|
463 | pwcsUrl: DWORD;
|
---|
464 | pwcsTitle: DWORD;
|
---|
465 | ftLastVisited: FILETIME;
|
---|
466 | ftLastUpdated: FILETIME;
|
---|
467 | ftExpires: FILETIME;
|
---|
468 | dwFlags: DWORD;
|
---|
469 | end;
|
---|
470 |
|
---|
471 |
|
---|
472 | IEnumSTATURL = interface(IUnknown)
|
---|
473 | ['{3C374A42-BAE4-11CF-BF7D-00AA006946EE}']
|
---|
474 | function Next(celt: Integer; out elt; pceltFetched: PLongint): HRESULT; stdcall;
|
---|
475 | function Skip(celt: Longint): HRESULT; stdcall;
|
---|
476 | function Reset: HResult; stdcall;
|
---|
477 | function Clone(out ppenum: IEnumSTATURL): HResult; stdcall;
|
---|
478 | function SetFilter(poszFilter: PWideChar; dwFlags: DWORD): HResult; stdcall;
|
---|
479 | end;
|
---|
480 |
|
---|
481 | IUrlHistoryStg = interface(IUnknown)
|
---|
482 | ['{3C374A41-BAE4-11CF-BF7D-00AA006946EE}']
|
---|
483 | function AddUrl(pocsUrl: PWideChar; pocsTitle: PWideChar; dwFlags: Integer): HResult; stdcall;
|
---|
484 | function DeleteUrl(pocsUrl: PWideChar; dwFlags: Integer): HResult; stdcall;
|
---|
485 | function QueryUrl(pocsUrl: PWideChar; dwFlags: Integer; var lpSTATURL: STATURL): HResult; stdcall;
|
---|
486 | function BindToObject(pocsUrl: PWideChar; var riid: TIID; out ppvOut: Pointer): HResult; stdcall;
|
---|
487 | function EnumUrls(out ppenum: IEnumSTATURL): HResult; stdcall;
|
---|
488 | end;
|
---|
489 |
|
---|
490 | IUrlHistoryStg2 = interface(IUrlHistoryStg)
|
---|
491 | ['{AFA0DC11-C313-11D0-831A-00C04FD5AE38}']
|
---|
492 | function AddUrlAndNotify(pocsUrl: PWideChar; pocsTitle: PWideChar; dwFlags: Integer;
|
---|
493 | fWriteHistory: Integer; var poctNotify: Pointer;
|
---|
494 | const punkISFolder: IUnknown): HResult; stdcall;
|
---|
495 | function ClearHistory: HResult; stdcall;
|
---|
496 | end;
|
---|
497 |
|
---|
498 | IUrlHistoryNotify = interface(IOleCommandTarget)
|
---|
499 | ['{BC40BEC1-C493-11d0-831B-00C04FD5AE38}']
|
---|
500 | end;
|
---|
501 |
|
---|
502 |
|
---|
503 |
|
---|
504 |
|
---|
505 |
|
---|
506 |
|
---|
507 |
|
---|
508 | PDOCHOSTUIINFO = ^TDOCHOSTUIINFO;
|
---|
509 | TDOCHOSTUIINFO = record
|
---|
510 | cbSize: ULONG;
|
---|
511 | dwFlags: DWORD;
|
---|
512 | dwDoubleClick: DWORD;
|
---|
513 | chHostCss: POLESTR;
|
---|
514 | chHostNS: POLESTR;
|
---|
515 | end;
|
---|
516 |
|
---|
517 |
|
---|
518 | IDocHostShowUI = interface(IUnknown)
|
---|
519 | ['{c4d244b0-d43e-11cf-893b-00aa00bdce1a}']
|
---|
520 | function ShowMessage(hwnd: THandle; lpstrText: POLESTR; lpstrCaption: POLESTR;
|
---|
521 | dwType: longint; lpstrHelpFile: POLESTR; dwHelpContext: longint;
|
---|
522 | var plResult: LRESULT): HRESULT; stdcall;
|
---|
523 | function ShowHelp(hwnd: THandle; pszHelpFile: POLESTR; uCommand: integer;
|
---|
524 | dwData: longint; ptMouse: TPoint;
|
---|
525 | var pDispatchObjectHit: IDispatch): HRESULT; stdcall;
|
---|
526 | end; // IDocHostShowUI
|
---|
527 |
|
---|
528 |
|
---|
529 | IDocHostUIHandler = interface(IUnknown)
|
---|
530 | ['{bd3f23c0-d43e-11cf-893b-00aa00bdce1a}']
|
---|
531 | function ShowContextMenu(const dwID: DWORD; const ppt: PPOINT;
|
---|
532 | const pcmdtReserved: IUnknown; const pdispReserved: IDispatch): HRESULT; stdcall;
|
---|
533 | function GetHostInfo(var pInfo: TDOCHOSTUIINFO): HRESULT; stdcall;
|
---|
534 | function ShowUI(const dwID: DWORD; const pActiveObject: IOleInPlaceActiveObject;
|
---|
535 | const pCommandTarget: IOleCommandTarget; const pFrame: IOleInPlaceFrame;
|
---|
536 | const pDoc: IOleInPlaceUIWindow): HRESULT; stdcall;
|
---|
537 | function HideUI: HRESULT; stdcall;
|
---|
538 | function UpdateUI: HRESULT; stdcall;
|
---|
539 | function EnableModeless(const fEnable: BOOL): HRESULT; stdcall;
|
---|
540 | function OnDocWindowActivate(const fActivate: BOOL): HRESULT; stdcall;
|
---|
541 | function OnFrameWindowActivate(const fActivate: BOOL): HRESULT; stdcall;
|
---|
542 | function ResizeBorder(const prcBorder: PRECT;
|
---|
543 | const pUIWindow: IOleInPlaceUIWindow;
|
---|
544 | const fRameWindow: BOOL): HRESULT; stdcall;
|
---|
545 | function TranslateAccelerator(const lpMsg: PMSG; const pguidCmdGroup: PGUID;
|
---|
546 | const nCmdID: DWORD): HRESULT; stdcall;
|
---|
547 | function GetOptionKeyPath(var pchKey: POLESTR; const dw: DWORD): HRESULT; stdcall;
|
---|
548 | function GetDropTarget(const pDropTarget: IDropTarget;
|
---|
549 | out ppDropTarget: IDropTarget): HRESULT; stdcall;
|
---|
550 | function GetExternal(out ppDispatch: IDispatch): HRESULT; stdcall;
|
---|
551 | function TranslateUrl(const dwTranslate: DWORD; const pchURLIn: POLESTR;
|
---|
552 | var ppchURLOut: POLESTR): HRESULT; stdcall;
|
---|
553 | function FilterDataObject(const pDO: IDataObject;
|
---|
554 | out ppDORet: IDataObject): HRESULT; stdcall;
|
---|
555 | end; // IDocHostUIHandler
|
---|
556 |
|
---|
557 |
|
---|
558 |
|
---|
559 |
|
---|
560 | IDocHostUIHandler2 = interface(IUnknown)
|
---|
561 | ['{3050f6d0-98b5-11cf-bb82-00aa00bdce0b}']
|
---|
562 | function GetOverrideKeyPath(pchKey: POLESTR; dw: DWORD): HRESULT; stdcall;
|
---|
563 | end;
|
---|
564 |
|
---|
565 | const
|
---|
566 | IID_IUniformResourceLocatorA: TGUID = (
|
---|
567 | D1:$FBF23B80; D2:$E3F0; D3:$101B; D4:($84,$88,$00,$AA,$00,$3E,$56,$F8));
|
---|
568 |
|
---|
569 | IID_IUniformResourceLocatorW: TGUID = (
|
---|
570 | D1:$CABB0DA0; D2:$DA57; D3:$11CF; D4:($99,$74,$00,$20,$AF,$D7,$97,$62));
|
---|
571 |
|
---|
572 |
|
---|
573 | {$IFDEF UNICODE}
|
---|
574 | IID_IUniformResourceLocator: TGUID = (
|
---|
575 | D1:$CABB0DA0; D2:$DA57; D3:$11CF; D4:($99,$74,$00,$20,$AF,$D7,$97,$62));
|
---|
576 | {$ELSE}
|
---|
577 | IID_IUniformResourceLocator : TGUID = (
|
---|
578 | D1:$FBF23B80; D2:$E3F0; D3:$101B; D4:($84,$88,$00,$AA,$00,$3E,$56,$F8));
|
---|
579 | {$ENDIF}
|
---|
580 |
|
---|
581 |
|
---|
582 | const
|
---|
583 | CLSID_InternetShortCut : TGUID = (
|
---|
584 | d1:$FBF23B40; D2:$E3F0; D3:$101B; D4:($84,$88,$00,$AA,$00,$3E,$56,$F8));
|
---|
585 |
|
---|
586 | SID_IUniformResourceLocatorA = '{FBF23B80-E3F0-101B-8488-00AA003E56F8}';
|
---|
587 | SID_IUniformResourceLocatorW = '{CABB0DA0-DA57-11CF-9974-0020AFD79762}';
|
---|
588 | {$IFDEF UNICODE}
|
---|
589 | SID_IUniformResourceLocator = SID_IUniformResourceLocatorW;
|
---|
590 | {$ELSE}
|
---|
591 | SID_IUniformResourceLocator = SID_IUniformResourceLocatorA;
|
---|
592 | {$ENDIF}
|
---|
593 |
|
---|
594 |
|
---|
595 |
|
---|
596 | IURL_SETURL_FL_GUESS_PROTOCOL = $0001; // Guess protocol if missing
|
---|
597 | IURL_SETURL_FL_USE_DEFAULT_PROTOCOL = $0002; // Use default protocol if missing
|
---|
598 |
|
---|
599 | IURL_INVOKECOMMAND_FL_ALLOW_UI = $0001;
|
---|
600 | IURL_INVOKECOMMAND_FL_USE_DEFAULT_VERB = $0002; // Ignore pcszVerb
|
---|
601 | IURL_INVOKECOMMAND_FL_DDEWAIT = $0004; // pass DDEWAIT to ShellExec
|
---|
602 |
|
---|
603 | TRANSLATEURL_FL_GUESS_PROTOCOL = $0001; // Guess protocol if missing
|
---|
604 | TRANSLATEURL_FL_USE_DEFAULT_PROTOCOL = $0002; // Use default protocol if missing
|
---|
605 |
|
---|
606 | URLASSOCDLG_FL_USE_DEFAULT_NAME = $0001;
|
---|
607 | URLASSOCDLG_FL_REGISTER_ASSOC = $0002;
|
---|
608 |
|
---|
609 | MIMEASSOCDLG_FL_REGISTER_ASSOC = $0001;
|
---|
610 |
|
---|
611 | type
|
---|
612 |
|
---|
613 | PUrlInvokeCommandInfoA = ^TUrlInvokeCommandInfoA;
|
---|
614 |
|
---|
615 | TUrlInvokeCommandInfoA = record
|
---|
616 | dwcbSize : DWORD; // Size of structure
|
---|
617 | dwFlags : DWORD; // Bit field of IURL_INVOKECOMMAND_FLAGS
|
---|
618 | hwndParent : HWND; // Parent window. Valid only if IURL_INVOKECOMMAND_FL_ALLOW_UI is set.
|
---|
619 | pcszVerb : LPCSTR; // Verb to invoke. Ignored if IURL_INVOKECOMMAND_FL_USE_DEFAULT_VERB is set.
|
---|
620 | end;
|
---|
621 |
|
---|
622 |
|
---|
623 |
|
---|
624 | PUrlInvokeCommandInfoW = ^TUrlInvokeCommandInfoW;
|
---|
625 | TUrlInvokeCommandInfoW = record
|
---|
626 | dwcbSize : DWORD; // Size of structure
|
---|
627 | dwFlags : DWORD; // Bit field of IURL_INVOKECOMMAND_FLAGS
|
---|
628 | hwndParent : HWND; // Parent window. Valid only if IURL_INVOKECOMMAND_FL_ALLOW_UI is set.
|
---|
629 | pcszVerb : LPCWSTR; // Verb to invoke. Ignored if IURL_INVOKECOMMAND_FL_USE_DEFAULT_VERB is set.
|
---|
630 | end;
|
---|
631 |
|
---|
632 | {$IFDEF UNICODE}
|
---|
633 | PURLInvokeCommandInfo = ^TUrlInvokeCommandInfoW;
|
---|
634 | TUrlInvokeCommandInfo = TUrlInvokeCOmmandInfoW;
|
---|
635 | {$ELSE}
|
---|
636 | PURLInvokeCommandInfo = ^TUrlInvokeCommandInfoA;
|
---|
637 | TUrlInvokeCommandInfo = TUrlInvokeCOmmandInfoA;
|
---|
638 | {$ENDIF}
|
---|
639 |
|
---|
640 |
|
---|
641 |
|
---|
642 |
|
---|
643 | IUniformResourceLocatorA = interface(IUnknown)
|
---|
644 | [SID_IUniformResourceLocatorA]
|
---|
645 | function SetURL(pcszURL : LpcStr; dwInFlags: DWORD): HRESULT; stdcall;
|
---|
646 | function GetURL(ppszURL : LpStr): HRESULT; stdcall;
|
---|
647 | function InvokeCommand(purlici : PURLINVOKECOMMANDINFOA): HRESULT; stdcall;
|
---|
648 |
|
---|
649 | end;
|
---|
650 |
|
---|
651 |
|
---|
652 |
|
---|
653 | IUniformResourceLocatorW = interface(IUnknown)
|
---|
654 | [SID_IUniformResourceLocatorW]
|
---|
655 | function SetURL(pcszURL : LpcWStr; dwInFlags: DWORD): HRESULT; stdcall;
|
---|
656 | function GetURL(ppszURL : LpWStr): HRESULT; stdcall;
|
---|
657 | function InvokeCommand(purlici : PURLINVOKECOMMANDINFOW): HRESULT; stdcall;
|
---|
658 | end;
|
---|
659 |
|
---|
660 |
|
---|
661 | {$IFDEF UNICODE}
|
---|
662 | IUniformResourceLocator = IUniformResourceLocatorW;
|
---|
663 | {$ELSE}
|
---|
664 | IUniformResourceLocator = IUniformResourceLocatorA;
|
---|
665 | {$ENDIF}
|
---|
666 |
|
---|
667 | function TranslateURLA(pcszURL : LPCSTR;
|
---|
668 | dwInFlags : DWORD;
|
---|
669 | ppszTranslatedURL : LPSTR) : HRESULT; stdcall;
|
---|
670 |
|
---|
671 |
|
---|
672 | function TranslateURLW(pcszURL : LPCWSTR;
|
---|
673 | dwInFlags : DWORD;
|
---|
674 | ppszTranslatedURL : LPWSTR) : HRESULT; stdcall;
|
---|
675 |
|
---|
676 | {$IFDEF UNICODE}
|
---|
677 | function TranslateURL(pcszURL : LPCWSTR;
|
---|
678 | dwInFlags : DWORD;
|
---|
679 | ppszTranslatedURL : LPWSTR) : HRESULT; stdcall;
|
---|
680 | {$ELSE}
|
---|
681 | function TranslateURL(pcszURL : LPCSTR;
|
---|
682 | dwInFlags : DWORD;
|
---|
683 | ppszTranslatedURL : LPSTR) : HRESULT; stdcall;
|
---|
684 | {$ENDIF}
|
---|
685 |
|
---|
686 |
|
---|
687 | function URLAssociationDialogA(hwndParent : HWND;
|
---|
688 | dwInFlags : DWORD;
|
---|
689 | pcszFile : LPCSTR;
|
---|
690 | pcszURL : LPCSTR;
|
---|
691 | pszAppBuf : LPSTR;
|
---|
692 | ucAppBufLen : UINT) : HRESULT; stdcall;
|
---|
693 |
|
---|
694 | function URLAssociationDialogW(hwndParent : HWND;
|
---|
695 | dwInFlags : DWORD;
|
---|
696 | pcszFile : LPCWSTR;
|
---|
697 | pcszURL : LPCWSTR;
|
---|
698 | pszAppBuf : LPWSTR;
|
---|
699 | ucAppBufLen : UINT) : HRESULT; stdcall;
|
---|
700 |
|
---|
701 | {$IFDEF UNICODE}
|
---|
702 | function URLAssociationDialog(hwndParent : HWND;
|
---|
703 | dwInFlags : DWORD;
|
---|
704 | pcszFile : LPCWSTR;
|
---|
705 | pcszURL : LPCWSTR;
|
---|
706 | pszAppBuf : LPWSTR;
|
---|
707 | ucAppBufLen : UINT) : HRESULT; stdcall;
|
---|
708 | {$ELSE}
|
---|
709 | function URLAssociationDialog(hwndParent : HWND;
|
---|
710 | dwInFlags : DWORD;
|
---|
711 | pcszFile : LPCSTR;
|
---|
712 | pcszURL : LPCSTR;
|
---|
713 | pszAppBuf : LPSTR;
|
---|
714 | ucAppBufLen : UINT) : HRESULT; stdcall;
|
---|
715 | {$ENDIF}
|
---|
716 |
|
---|
717 |
|
---|
718 |
|
---|
719 | function MIMEAssociationDialogA(hwndParent : HWND;
|
---|
720 | dwInFlags : DWORD;
|
---|
721 | pcszFile : LPCSTR;
|
---|
722 | pcszMIMEContentType : LPCSTR;
|
---|
723 | pszAppBuf : LPSTR;
|
---|
724 | ucAppBufLen : UINT) : HRESULT; stdcall;
|
---|
725 |
|
---|
726 |
|
---|
727 | function MIMEAssociationDialogW(hwndParent : HWND;
|
---|
728 | dwInFlags : DWORD;
|
---|
729 | pcszFile : LPCWSTR;
|
---|
730 | pcszMIMEContentType : LPCWSTR;
|
---|
731 | pszAppBuf : LPWSTR;
|
---|
732 | ucAppBufLen : UINT) : HRESULT; stdcall;
|
---|
733 |
|
---|
734 | {$IFDEF UNICODE}
|
---|
735 | function MIMEAssociationDialog(hwndParent : HWND;
|
---|
736 | dwInFlags : DWORD;
|
---|
737 | pcszFile : LPCWSTR;
|
---|
738 | pcszMIMEContentType : LPCWSTR;
|
---|
739 | pszAppBuf : LPWSTR;
|
---|
740 | ucAppBufLen : UINT) : HRESULT; stdcall;
|
---|
741 | {$ELSE}
|
---|
742 | function MIMEAssociationDialog(hwndParent : HWND;
|
---|
743 | dwInFlags : DWORD;
|
---|
744 | pcszFile : LPCSTR;
|
---|
745 | pcszMIMEContentType : LPCSTR;
|
---|
746 | pszAppBuf : LPSTR;
|
---|
747 | ucAppBufLen : UINT) : HRESULT; stdcall;
|
---|
748 | {$ENDIF}
|
---|
749 |
|
---|
750 | function InetIsOffline(dwFlags: DWORD): BOOL; stdcall;
|
---|
751 |
|
---|
752 |
|
---|
753 | {$IFDEF VER120}
|
---|
754 |
|
---|
755 | const
|
---|
756 | IID_IInternetSession: TGUID = '{79eac9e7-baf9-11ce-8c82-00aa004ba90b}';
|
---|
757 | IID_IInternetSecurityMgrSite: TGUID = '{79eac9ed-baf9-11ce-8c82-00aa004ba90b}';
|
---|
758 | IID_IInternetSecurityManager: TGUID = '{79eac9ee-baf9-11ce-8c82-00aa004ba90b}';
|
---|
759 | IID_IInternetHostSecurityManager: TGUID = '{3af280b6-cb3f-11d0-891e-00c04fb6bfc4}';
|
---|
760 | SID_IInternetSecurityManager: TGUID = '{79eac9ee-baf9-11ce-8c82-00aa004ba90b}';
|
---|
761 | SID_IInternetHostSecurityManager: TGUID = '{3af280b6-cb3f-11d0-891e-00c04fb6bfc4}';
|
---|
762 | IID_IInternetZoneManager: TGUID = '{79eac9ef-baf9-11ce-8c82-00aa004ba90b}';
|
---|
763 |
|
---|
764 |
|
---|
765 | type
|
---|
766 | TUrlZoneReg = ULONG;
|
---|
767 |
|
---|
768 | PBindInfo = ^TBindInfo;
|
---|
769 | _tagBINDINFO = packed record
|
---|
770 | cbSize: ULONG;
|
---|
771 | szExtraInfo: LPWSTR;
|
---|
772 | stgmedData: TStgMedium;
|
---|
773 | grfBindInfoF: DWORD;
|
---|
774 | dwBindVerb: DWORD;
|
---|
775 | szCustomVerb: LPWSTR;
|
---|
776 | cbstgmedData: DWORD;
|
---|
777 | dwOptions: DWORD;
|
---|
778 | dwOptionsFlags: DWORD;
|
---|
779 | dwCodePage: DWORD;
|
---|
780 | securityAttributes: TSecurityAttributes;
|
---|
781 | iid: TGUID;
|
---|
782 | pUnk: IUnknown;
|
---|
783 | dwReserved: DWORD;
|
---|
784 | end;
|
---|
785 | TBindInfo = _tagBINDINFO;
|
---|
786 | BINDINFO = _tagBINDINFO;
|
---|
787 |
|
---|
788 |
|
---|
789 | {$NODEFINE POLEStrArray}
|
---|
790 | POLEStrArray = ^TOLESTRArray;
|
---|
791 | {$NODEFINE TOLEStrArray}
|
---|
792 | TOLEStrArray = array[0..MaxLongint div SizeOf(POLEStr) - 1] of POLEStr;
|
---|
793 |
|
---|
794 | {$EXTERNALSYM IInternetBindInfo}
|
---|
795 | IInternetBindInfo = interface
|
---|
796 | ['{79eac9e1-baf9-11ce-8c82-00aa004ba90b}']
|
---|
797 | function GetBindInfo(out grfBINDF: DWORD; var bindinfo: TBindInfo): HResult; stdcall;
|
---|
798 | function GetBindString(ulStringType: ULONG; wzStr: POLEStrArray; cEl: ULONG;
|
---|
799 | var cElFetched: ULONG): HResult; stdcall;
|
---|
800 | end;
|
---|
801 |
|
---|
802 | PProtocolData = ^TProtocolData;
|
---|
803 | {$EXTERNALSYM _tagPROTOCOLDATA}
|
---|
804 | _tagPROTOCOLDATA = packed record
|
---|
805 | grfFlags: DWORD;
|
---|
806 | dwState: DWORD;
|
---|
807 | pData: Pointer;
|
---|
808 | cbData: ULONG;
|
---|
809 | end;
|
---|
810 | TProtocolData = _tagPROTOCOLDATA;
|
---|
811 | {$EXTERNALSYM _tagPROTOCOLDATA}
|
---|
812 | PROTOCOLDATA = _tagPROTOCOLDATA;
|
---|
813 |
|
---|
814 | {$EXTERNALSYM IInternetProtocolSink}
|
---|
815 | IInternetProtocolSink = interface; // forward
|
---|
816 |
|
---|
817 | {$EXTERNALSYM IInternetProtocolRoot}
|
---|
818 | IInternetProtocolRoot = interface
|
---|
819 | ['{79eac9e3-baf9-11ce-8c82-00aa004ba90b}']
|
---|
820 | function Start(szUrl: LPCWSTR; OIProtSink: IInternetProtocolSink;
|
---|
821 | OIBindInfo: IInternetBindInfo; grfPI, dwReserved: DWORD): HResult; stdcall;
|
---|
822 | function Continue(const ProtocolData: TProtocolData): HResult; stdcall;
|
---|
823 | function Abort(hrReason: HResult; dwOptions: DWORD): HResult; stdcall;
|
---|
824 | function Terminate(dwOptions: DWORD): HResult; stdcall;
|
---|
825 | function Suspend: HResult; stdcall;
|
---|
826 | function Resume: HResult; stdcall;
|
---|
827 | end;
|
---|
828 |
|
---|
829 | {$EXTERNALSYM IInternetProtocol}
|
---|
830 | IInternetProtocol = interface(IInternetProtocolRoot)
|
---|
831 | ['{79eac9e4-baf9-11ce-8c82-00aa004ba90b}']
|
---|
832 | function Read(pv: Pointer; cb: ULONG; out cbRead: ULONG): HResult; stdcall;
|
---|
833 | function Seek(dlibMove: LARGE_INTEGER; dwOrigin: DWORD; out libNewPosition: ULARGE_INTEGER): HResult; stdcall;
|
---|
834 | function LockRequest(dwOptions: DWORD): HResult; stdcall;
|
---|
835 | function UnlockRequest: HResult; stdcall;
|
---|
836 | end;
|
---|
837 |
|
---|
838 | {$EXTERNALSYM IInternetProtocolSink}
|
---|
839 | IInternetProtocolSink = interface
|
---|
840 | ['{79eac9e5-baf9-11ce-8c82-00aa004ba90b}']
|
---|
841 | function Switch(const ProtocolData: TProtocolData): HResult; stdcall;
|
---|
842 | function ReportProgress(ulStatusCode: ULONG; szStatusText: LPCWSTR): HResult; stdcall;
|
---|
843 | function ReportData(grfBSCF: DWORD; ulProgress, ulProgressMax: ULONG): HResult; stdcall;
|
---|
844 | function ReportResult(hrResult: HResult; dwError: DWORD; szResult: LPCWSTR): HResult; stdcall;
|
---|
845 | end;
|
---|
846 |
|
---|
847 | {$NODEFINE TLPCWSTRArray}
|
---|
848 | TLPCWSTRArray = array[0..MaxLongInt div SizeOf(LPCWSTR) - 1] of LPCWSTR;
|
---|
849 | {$NODEFINE PLPCWSTRArray}
|
---|
850 | PLPCWSTRArray = ^TLPCWSTRArray;
|
---|
851 |
|
---|
852 | {$EXTERNALSYM IInternetSession}
|
---|
853 | IInternetSession = interface
|
---|
854 | ['{79eac9e7-baf9-11ce-8c82-00aa004ba90b}']
|
---|
855 | function RegisterNameSpace(CF: IClassFactory; const clsid: TCLSID; pwzProtocol: LPCWSTR;
|
---|
856 | cPatterns: ULONG; const pwzPatterns: PLPCWSTRArray; dwReserved: DWORD): HResult; stdcall;
|
---|
857 | function UnregisterNameSpace(CF: IClassFactory; pszProtocol: LPCWSTR): HResult; stdcall;
|
---|
858 | function RegisterMimeFilter(CF: IClassFactory; const rclsid: TCLSID;
|
---|
859 | pwzType: LPCWSTR): HResult; stdcall;
|
---|
860 | function UnregisterMimeFilter(CF: IClassFactory; pwzType: LPCWSTR): HResult; stdcall;
|
---|
861 | function CreateBinding(BC: IBindCtx; szUrl: LPCWSTR; UnkOuter: IUnknown; out Unk: IUnknown;
|
---|
862 | out OINetProt: IInternetProtocol; dwOption: DWORD): HResult; stdcall;
|
---|
863 | function SetSessionOption(dwOption: DWORD; pBuffer: Pointer; dwBufferLength: DWORD;
|
---|
864 | dwReserved: DWORD): HResult; stdcall;
|
---|
865 | function GetSessionOption(dwOption: DWORD; pBuffer: Pointer; var dwBufferLength: DWORD;
|
---|
866 | dwReserved: DWORD): HResult; stdcall;
|
---|
867 | end; // IInternetSession
|
---|
868 |
|
---|
869 | {$EXTERNALSYM CoInternetGetSession}
|
---|
870 | function CoInternetGetSession(dwSessionMode: DWORD; var pIInternetSession: IInternetSession;
|
---|
871 | dwReserved: DWORD): HResult; stdcall;
|
---|
872 |
|
---|
873 |
|
---|
874 |
|
---|
875 | type
|
---|
876 | {$EXTERNALSYM IInternetSecurityMgrSite}
|
---|
877 | IInternetSecurityMgrSite = interface
|
---|
878 | ['{79eac9ed-baf9-11ce-8c82-00aa004ba90b}']
|
---|
879 | function GetWindow(out hwnd: HWnd): HResult; stdcall;
|
---|
880 | function EnableModeless(fEnable: BOOL): HResult; stdcall;
|
---|
881 | end;
|
---|
882 |
|
---|
883 | const
|
---|
884 | {$EXTERNALSYM MAX_SIZE_SECURITY_ID}
|
---|
885 | MAX_SIZE_SECURITY_ID = 512; // bytes;
|
---|
886 |
|
---|
887 | // MapUrlToZone returns the zone index given a URL
|
---|
888 | {$EXTERNALSYM PUAF_DEFAULT}
|
---|
889 | PUAF_DEFAULT = $00000000;
|
---|
890 | {$EXTERNALSYM PUAF_NOUI}
|
---|
891 | PUAF_NOUI = $00000001;
|
---|
892 | {$EXTERNALSYM PUAF_ISFILE}
|
---|
893 | PUAF_ISFILE = $00000002;
|
---|
894 | {$EXTERNALSYM PUAF_WARN_IF_DENIED}
|
---|
895 | PUAF_WARN_IF_DENIED = $00000004;
|
---|
896 | {$EXTERNALSYM PUAF_FORCEUI_FOREGROUND}
|
---|
897 | PUAF_FORCEUI_FOREGROUND = $00000008;
|
---|
898 | {$EXTERNALSYM PUAF_CHECK_TIFS}
|
---|
899 | PUAF_CHECK_TIFS = $00000010;
|
---|
900 |
|
---|
901 | // This is the wrapper function that most clients will use.
|
---|
902 | // It figures out the current Policy for the passed in Action,
|
---|
903 | // and puts up UI if the current Policy indicates that the user
|
---|
904 | // should be queried. It returns back the Policy which the caller
|
---|
905 | // will use to determine if the action should be allowed
|
---|
906 | // This is the wrapper function to conveniently read a custom policy.
|
---|
907 |
|
---|
908 | // SetZoneMapping
|
---|
909 | // lpszPattern: string denoting a URL pattern
|
---|
910 | // Examples of valid patterns:
|
---|
911 | // *://*.msn.com
|
---|
912 | // http://*.sony.co.jp
|
---|
913 | // *://et.msn.com
|
---|
914 | // ftp://157.54.23.41/
|
---|
915 | // https://localsvr
|
---|
916 | // file:\localsvr\share
|
---|
917 | // *://157.54.100-200.*
|
---|
918 | // Examples of invalid patterns:
|
---|
919 | // http://*.lcs.mit.edu
|
---|
920 | // ftp://*
|
---|
921 | // dwFlags: SZM_FLAGS values
|
---|
922 |
|
---|
923 | {$EXTERNALSYM SZM_CREATE}
|
---|
924 | SZM_CREATE = $00000000;
|
---|
925 | {$EXTERNALSYM SZM_DELETE}
|
---|
926 | SZM_DELETE = $00000001;
|
---|
927 |
|
---|
928 | type
|
---|
929 | {$EXTERNALSYM IInternetSecurityManager}
|
---|
930 | IInternetSecurityManager = interface
|
---|
931 | ['{79eac9ee-baf9-11ce-8c82-00aa004ba90b}']
|
---|
932 | function SetSecuritySite(Site: IInternetSecurityMgrSite): HResult; stdcall;
|
---|
933 | function GetSecuritySite(out Site: IInternetSecurityMgrSite): HResult; stdcall;
|
---|
934 | function MapUrlToZone(pwszUrl: LPCWSTR; out dwZone: DWORD;
|
---|
935 | dwFlags: DWORD): HResult; stdcall;
|
---|
936 | function GetSecurityId(pwszUrl: LPCWSTR; pbSecurityId: Pointer;
|
---|
937 | var cbSecurityId: DWORD; dwReserved: DWORD): HResult; stdcall;
|
---|
938 | function ProcessUrlAction(pwszUrl: LPCWSTR; dwAction: DWORD;
|
---|
939 | pPolicy: Pointer; cbPolicy: DWORD; pContext: Pointer; cbContext: DWORD;
|
---|
940 | dwFlags, dwReserved: DWORD): HResult; stdcall;
|
---|
941 | function QueryCustomPolicy(pwszUrl: LPCWSTR; const guidKey: TGUID;
|
---|
942 | out pPolicy: Pointer; out cbPolicy: DWORD; pContext: Pointer; cbContext: DWORD;
|
---|
943 | dwReserved: DWORD): HResult; stdcall;
|
---|
944 | function SetZoneMapping(dwZone: DWORD; lpszPattern: LPCWSTR;
|
---|
945 | dwFlags: DWORD): HResult; stdcall;
|
---|
946 | function GetZoneMappings(dwZone: DWORD; out enumString: IEnumString;
|
---|
947 | dwFlags: DWORD): HResult; stdcall;
|
---|
948 | end;
|
---|
949 |
|
---|
950 | {$EXTERNALSYM IInternetHostSecurityManager}
|
---|
951 | IInternetHostSecurityManager = interface
|
---|
952 | ['{3af280b6-cb3f-11d0-891e-00c04fb6bfc4}']
|
---|
953 | function GetSecurityId(pbSecurityId: Pointer; var cbSecurityId: DWORD;
|
---|
954 | dwReserved: DWORD): HResult; stdcall;
|
---|
955 | function ProcessUrlAction(dwAction: DWORD; pPolicy: Pointer; cbPolicy: DWORD;
|
---|
956 | pContext: Pointer; cbContext, dwFlags, dwReserved: DWORD): HResult; stdcall;
|
---|
957 | function QueryCustomPolicy(const guidKey: TGUID; out pPolicy: Pointer; out cbPolicy: DWORD;
|
---|
958 | pContext: Pointer; cbContext, dwReserved: DWORD): HResult; stdcall;
|
---|
959 | end;
|
---|
960 |
|
---|
961 | const
|
---|
962 | {$EXTERNALSYM URLACTION_MIN}
|
---|
963 | URLACTION_MIN = $00001000;
|
---|
964 |
|
---|
965 | {$EXTERNALSYM URLACTION_DOWNLOAD_MIN}
|
---|
966 | URLACTION_DOWNLOAD_MIN = $00001000;
|
---|
967 | {$EXTERNALSYM URLACTION_DOWNLOAD_SIGNED_ACTIVEX}
|
---|
968 | URLACTION_DOWNLOAD_SIGNED_ACTIVEX = $00001001;
|
---|
969 | {$EXTERNALSYM URLACTION_DOWNLOAD_UNSIGNED_ACTIVEX}
|
---|
970 | URLACTION_DOWNLOAD_UNSIGNED_ACTIVEX = $00001004;
|
---|
971 | {$EXTERNALSYM URLACTION_DOWNLOAD_CURR_MAX}
|
---|
972 | URLACTION_DOWNLOAD_CURR_MAX = $00001004;
|
---|
973 | {$EXTERNALSYM URLACTION_DOWNLOAD_MAX}
|
---|
974 | URLACTION_DOWNLOAD_MAX = $000011FF;
|
---|
975 |
|
---|
976 | {$EXTERNALSYM URLACTION_ACTIVEX_MIN}
|
---|
977 | URLACTION_ACTIVEX_MIN = $00001200;
|
---|
978 | {$EXTERNALSYM URLACTION_ACTIVEX_RUN}
|
---|
979 | URLACTION_ACTIVEX_RUN = $00001200;
|
---|
980 | {$EXTERNALSYM URLACTION_ACTIVEX_OVERRIDE_OBJECT_SAFETY}
|
---|
981 | URLACTION_ACTIVEX_OVERRIDE_OBJECT_SAFETY = $00001201; // aggregate next four
|
---|
982 | {$EXTERNALSYM URLACTION_ACTIVEX_OVERRIDE_DATA_SAFETY}
|
---|
983 | URLACTION_ACTIVEX_OVERRIDE_DATA_SAFETY = $00001202; //
|
---|
984 | {$EXTERNALSYM URLACTION_ACTIVEX_OVERRIDE_SCRIPT_SAFETY}
|
---|
985 | URLACTION_ACTIVEX_OVERRIDE_SCRIPT_SAFETY = $00001203; //
|
---|
986 | {$EXTERNALSYM URLACTION_SCRIPT_OVERRIDE_SAFETY}
|
---|
987 | URLACTION_SCRIPT_OVERRIDE_SAFETY = $00001401; //
|
---|
988 | {$EXTERNALSYM URLACTION_ACTIVEX_CONFIRM_NOOBJECTSAFETY}
|
---|
989 | URLACTION_ACTIVEX_CONFIRM_NOOBJECTSAFETY = $00001204; //
|
---|
990 | {$EXTERNALSYM URLACTION_ACTIVEX_TREATASUNTRUSTED}
|
---|
991 | URLACTION_ACTIVEX_TREATASUNTRUSTED = $00001205;
|
---|
992 | {$EXTERNALSYM URLACTION_ACTIVEX_CURR_MAX}
|
---|
993 | URLACTION_ACTIVEX_CURR_MAX = $00001205;
|
---|
994 | {$EXTERNALSYM URLACTION_ACTIVEX_MAX}
|
---|
995 | URLACTION_ACTIVEX_MAX = $000013FF;
|
---|
996 |
|
---|
997 | {$EXTERNALSYM URLACTION_SCRIPT_MIN}
|
---|
998 | URLACTION_SCRIPT_MIN = $00001400;
|
---|
999 | {$EXTERNALSYM URLACTION_SCRIPT_RUN}
|
---|
1000 | URLACTION_SCRIPT_RUN = $00001400;
|
---|
1001 | {$EXTERNALSYM URLACTION_SCRIPT_JAVA_USE}
|
---|
1002 | URLACTION_SCRIPT_JAVA_USE = $00001402;
|
---|
1003 | {$EXTERNALSYM URLACTION_SCRIPT_SAFE_ACTIVEX}
|
---|
1004 | URLACTION_SCRIPT_SAFE_ACTIVEX = $00001405;
|
---|
1005 | {$EXTERNALSYM URLACTION_SCRIPT_CURR_MAX}
|
---|
1006 | URLACTION_SCRIPT_CURR_MAX = $00001405;
|
---|
1007 | {$EXTERNALSYM URLACTION_SCRIPT_MAX}
|
---|
1008 | URLACTION_SCRIPT_MAX = $000015FF;
|
---|
1009 |
|
---|
1010 | {$EXTERNALSYM URLACTION_HTML_MIN}
|
---|
1011 | URLACTION_HTML_MIN = $00001600;
|
---|
1012 | {$EXTERNALSYM URLACTION_HTML_SUBMIT_FORMS}
|
---|
1013 | URLACTION_HTML_SUBMIT_FORMS = $00001601; // aggregate next two
|
---|
1014 | {$EXTERNALSYM URLACTION_HTML_SUBMIT_FORMS_FROM}
|
---|
1015 | URLACTION_HTML_SUBMIT_FORMS_FROM = $00001602; //
|
---|
1016 | {$EXTERNALSYM URLACTION_HTML_SUBMIT_FORMS_TO}
|
---|
1017 | URLACTION_HTML_SUBMIT_FORMS_TO = $00001603; //
|
---|
1018 | {$EXTERNALSYM URLACTION_HTML_FONT_DOWNLOAD}
|
---|
1019 | URLACTION_HTML_FONT_DOWNLOAD = $00001604;
|
---|
1020 | {$EXTERNALSYM URLACTION_HTML_JAVA_RUN}
|
---|
1021 | URLACTION_HTML_JAVA_RUN = $00001605; // derive from Java custom policy;
|
---|
1022 | {$EXTERNALSYM URLACTION_HTML_CURR_MAX}
|
---|
1023 | URLACTION_HTML_CURR_MAX = $00001605;
|
---|
1024 | {$EXTERNALSYM URLACTION_HTML_MAX}
|
---|
1025 | URLACTION_HTML_MAX = $000017FF;
|
---|
1026 |
|
---|
1027 | {$EXTERNALSYM URLACTION_SHELL_MIN}
|
---|
1028 | URLACTION_SHELL_MIN = $00001800;
|
---|
1029 | {$EXTERNALSYM URLACTION_SHELL_INSTALL_DTITEMS}
|
---|
1030 | URLACTION_SHELL_INSTALL_DTITEMS = $00001800;
|
---|
1031 | {$EXTERNALSYM URLACTION_SHELL_MOVE_OR_COPY}
|
---|
1032 | URLACTION_SHELL_MOVE_OR_COPY = $00001802;
|
---|
1033 | {$EXTERNALSYM URLACTION_SHELL_FILE_DOWNLOAD}
|
---|
1034 | URLACTION_SHELL_FILE_DOWNLOAD = $00001803;
|
---|
1035 | {$EXTERNALSYM URLACTION_SHELL_VERB}
|
---|
1036 | URLACTION_SHELL_VERB = $00001804;
|
---|
1037 | {$EXTERNALSYM URLACTION_SHELL_WEBVIEW_VERB}
|
---|
1038 | URLACTION_SHELL_WEBVIEW_VERB = $00001805;
|
---|
1039 | {$EXTERNALSYM URLACTION_SHELL_CURR_MAX}
|
---|
1040 | URLACTION_SHELL_CURR_MAX = $00001805;
|
---|
1041 | {$EXTERNALSYM URLACTION_SHELL_MAX}
|
---|
1042 | URLACTION_SHELL_MAX = $000019FF;
|
---|
1043 |
|
---|
1044 | {$EXTERNALSYM URLACTION_NETWORK_MIN}
|
---|
1045 | URLACTION_NETWORK_MIN = $00001A00;
|
---|
1046 |
|
---|
1047 | {$EXTERNALSYM URLACTION_CREDENTIALS_USE}
|
---|
1048 | URLACTION_CREDENTIALS_USE = $00001A00;
|
---|
1049 | {$EXTERNALSYM URLPOLICY_CREDENTIALS_SILENT_LOGON_OK}
|
---|
1050 | URLPOLICY_CREDENTIALS_SILENT_LOGON_OK = $00000000;
|
---|
1051 | {$EXTERNALSYM URLPOLICY_CREDENTIALS_MUST_PROMPT_USER}
|
---|
1052 | URLPOLICY_CREDENTIALS_MUST_PROMPT_USER = $00010000;
|
---|
1053 | {$EXTERNALSYM URLPOLICY_CREDENTIALS_CONDITIONAL_PROMPT}
|
---|
1054 | URLPOLICY_CREDENTIALS_CONDITIONAL_PROMPT = $00020000;
|
---|
1055 | {$EXTERNALSYM URLPOLICY_CREDENTIALS_ANONYMOUS_ONLY}
|
---|
1056 | URLPOLICY_CREDENTIALS_ANONYMOUS_ONLY = $00030000;
|
---|
1057 |
|
---|
1058 | {$EXTERNALSYM URLACTION_AUTHENTICATE_CLIENT}
|
---|
1059 | URLACTION_AUTHENTICATE_CLIENT = $00001A01;
|
---|
1060 | {$EXTERNALSYM URLPOLICY_AUTHENTICATE_CLEARTEXT_OK}
|
---|
1061 | URLPOLICY_AUTHENTICATE_CLEARTEXT_OK = $00000000;
|
---|
1062 | {$EXTERNALSYM URLPOLICY_AUTHENTICATE_CHALLENGE_RESPONSE}
|
---|
1063 | URLPOLICY_AUTHENTICATE_CHALLENGE_RESPONSE = $00010000;
|
---|
1064 | {$EXTERNALSYM URLPOLICY_AUTHENTICATE_MUTUAL_ONLY}
|
---|
1065 | URLPOLICY_AUTHENTICATE_MUTUAL_ONLY = $00030000;
|
---|
1066 |
|
---|
1067 | {$EXTERNALSYM URLACTION_NETWORK_CURR_MAX}
|
---|
1068 | URLACTION_NETWORK_CURR_MAX = $00001A01;
|
---|
1069 | {$EXTERNALSYM URLACTION_NETWORK_MAX}
|
---|
1070 | URLACTION_NETWORK_MAX = $00001BFF;
|
---|
1071 |
|
---|
1072 | {$EXTERNALSYM URLACTION_JAVA_MIN}
|
---|
1073 | URLACTION_JAVA_MIN = $00001C00;
|
---|
1074 | {$EXTERNALSYM URLACTION_JAVA_PERMISSIONS}
|
---|
1075 | URLACTION_JAVA_PERMISSIONS = $00001C00;
|
---|
1076 | {$EXTERNALSYM URLPOLICY_JAVA_PROHIBIT}
|
---|
1077 | URLPOLICY_JAVA_PROHIBIT = $00000000;
|
---|
1078 | {$EXTERNALSYM URLPOLICY_JAVA_HIGH}
|
---|
1079 | URLPOLICY_JAVA_HIGH = $00010000;
|
---|
1080 | {$EXTERNALSYM URLPOLICY_JAVA_MEDIUM}
|
---|
1081 | URLPOLICY_JAVA_MEDIUM = $00020000;
|
---|
1082 | {$EXTERNALSYM URLPOLICY_JAVA_LOW}
|
---|
1083 | URLPOLICY_JAVA_LOW = $00030000;
|
---|
1084 | {$EXTERNALSYM URLPOLICY_JAVA_CUSTOM}
|
---|
1085 | URLPOLICY_JAVA_CUSTOM = $00800000;
|
---|
1086 | {$EXTERNALSYM URLACTION_JAVA_CURR_MAX}
|
---|
1087 | URLACTION_JAVA_CURR_MAX = $00001C00;
|
---|
1088 | {$EXTERNALSYM URLACTION_JAVA_MAX}
|
---|
1089 | URLACTION_JAVA_MAX = $00001CFF;
|
---|
1090 |
|
---|
1091 | // The following Infodelivery actions should have no default policies
|
---|
1092 | // in the registry. They assume that no default policy means fall
|
---|
1093 | // back to the global restriction. If an admin sets a policy per
|
---|
1094 | // zone, then it overrides the global restriction.
|
---|
1095 |
|
---|
1096 | {$EXTERNALSYM URLACTION_INFODELIVERY_MIN}
|
---|
1097 | URLACTION_INFODELIVERY_MIN = $00001D00;
|
---|
1098 | {$EXTERNALSYM URLACTION_INFODELIVERY_NO_ADDING_CHANNELS}
|
---|
1099 | URLACTION_INFODELIVERY_NO_ADDING_CHANNELS = $00001D00;
|
---|
1100 | {$EXTERNALSYM URLACTION_INFODELIVERY_NO_EDITING_CHANNELS}
|
---|
1101 | URLACTION_INFODELIVERY_NO_EDITING_CHANNELS = $00001D01;
|
---|
1102 | {$EXTERNALSYM URLACTION_INFODELIVERY_NO_REMOVING_CHANNELS}
|
---|
1103 | URLACTION_INFODELIVERY_NO_REMOVING_CHANNELS = $00001D02;
|
---|
1104 | {$EXTERNALSYM URLACTION_INFODELIVERY_NO_ADDING_SUBSCRIPTIONS}
|
---|
1105 | URLACTION_INFODELIVERY_NO_ADDING_SUBSCRIPTIONS = $00001D03;
|
---|
1106 | {$EXTERNALSYM URLACTION_INFODELIVERY_NO_EDITING_SUBSCRIPTIONS}
|
---|
1107 | URLACTION_INFODELIVERY_NO_EDITING_SUBSCRIPTIONS = $00001D04;
|
---|
1108 | {$EXTERNALSYM URLACTION_INFODELIVERY_NO_REMOVING_SUBSCRIPTIONS}
|
---|
1109 | URLACTION_INFODELIVERY_NO_REMOVING_SUBSCRIPTIONS = $00001D05;
|
---|
1110 | {$EXTERNALSYM URLACTION_INFODELIVERY_NO_CHANNEL_LOGGING}
|
---|
1111 | URLACTION_INFODELIVERY_NO_CHANNEL_LOGGING = $00001D06;
|
---|
1112 | {$EXTERNALSYM URLACTION_INFODELIVERY_CURR_MAX}
|
---|
1113 | URLACTION_INFODELIVERY_CURR_MAX = $00001D06;
|
---|
1114 | {$EXTERNALSYM URLACTION_INFODELIVERY_MAX}
|
---|
1115 | URLACTION_INFODELIVERY_MAX = $00001DFF;
|
---|
1116 | {$EXTERNALSYM URLACTION_CHANNEL_SOFTDIST_MIN}
|
---|
1117 | URLACTION_CHANNEL_SOFTDIST_MIN = $00001E00;
|
---|
1118 | {$EXTERNALSYM URLACTION_CHANNEL_SOFTDIST_PERMISSIONS}
|
---|
1119 | URLACTION_CHANNEL_SOFTDIST_PERMISSIONS = $00001E05;
|
---|
1120 | {$EXTERNALSYM URLPOLICY_CHANNEL_SOFTDIST_PROHIBIT}
|
---|
1121 | URLPOLICY_CHANNEL_SOFTDIST_PROHIBIT = $00010000;
|
---|
1122 | {$EXTERNALSYM URLPOLICY_CHANNEL_SOFTDIST_PRECACHE}
|
---|
1123 | URLPOLICY_CHANNEL_SOFTDIST_PRECACHE = $00020000;
|
---|
1124 | {$EXTERNALSYM URLPOLICY_CHANNEL_SOFTDIST_AUTOINSTALL}
|
---|
1125 | URLPOLICY_CHANNEL_SOFTDIST_AUTOINSTALL = $00030000;
|
---|
1126 | {$EXTERNALSYM URLACTION_CHANNEL_SOFTDIST_MAX}
|
---|
1127 | URLACTION_CHANNEL_SOFTDIST_MAX = $00001EFF;
|
---|
1128 |
|
---|
1129 | // For each action specified above the system maintains
|
---|
1130 | // a set of policies for the action.
|
---|
1131 | // The only policies supported currently are permissions (i.e. is something allowed)
|
---|
1132 | // and logging status.
|
---|
1133 | // IMPORTANT: If you are defining your own policies don't overload the meaning of the
|
---|
1134 | // loword of the policy. You can use the hiword to store any policy bits which are only
|
---|
1135 | // meaningful to your action.
|
---|
1136 | // For an example of how to do this look at the URLPOLICY_JAVA above
|
---|
1137 |
|
---|
1138 | // Permissions
|
---|
1139 | {$EXTERNALSYM URLPOLICY_ALLOW}
|
---|
1140 | URLPOLICY_ALLOW = $00;
|
---|
1141 | {$EXTERNALSYM URLPOLICY_QUERY}
|
---|
1142 | URLPOLICY_QUERY = $01;
|
---|
1143 | {$EXTERNALSYM URLPOLICY_DISALLOW}
|
---|
1144 | URLPOLICY_DISALLOW = $03;
|
---|
1145 |
|
---|
1146 | // Notifications are not done when user already queried.
|
---|
1147 | {$EXTERNALSYM URLPOLICY_NOTIFY_ON_ALLOW}
|
---|
1148 | URLPOLICY_NOTIFY_ON_ALLOW = $10;
|
---|
1149 | {$EXTERNALSYM URLPOLICY_NOTIFY_ON_DISALLOW}
|
---|
1150 | URLPOLICY_NOTIFY_ON_DISALLOW = $20;
|
---|
1151 |
|
---|
1152 | // Logging is done regardless of whether user was queried.
|
---|
1153 | {$EXTERNALSYM URLPOLICY_LOG_ON_ALLOW}
|
---|
1154 | URLPOLICY_LOG_ON_ALLOW = $40;
|
---|
1155 | {$EXTERNALSYM URLPOLICY_LOG_ON_DISALLOW}
|
---|
1156 | URLPOLICY_LOG_ON_DISALLOW = $80;
|
---|
1157 |
|
---|
1158 | {$EXTERNALSYM URLPOLICY_MASK_PERMISSIONS}
|
---|
1159 | URLPOLICY_MASK_PERMISSIONS = $0F;
|
---|
1160 |
|
---|
1161 |
|
---|
1162 | // The ordinal #'s that define the predefined zones internet explorer knows about.
|
---|
1163 | // When we support user-defined zones their zone numbers should be between
|
---|
1164 | // URLZONE_USER_MIN and URLZONE_USER_MAX
|
---|
1165 |
|
---|
1166 | const
|
---|
1167 | {$EXTERNALSYM URLZONE_PREDEFINED_MIN}
|
---|
1168 | URLZONE_PREDEFINED_MIN = 0;
|
---|
1169 | {$EXTERNALSYM URLZONE_LOCAL_MACHINE}
|
---|
1170 | URLZONE_LOCAL_MACHINE = 0;
|
---|
1171 | {$EXTERNALSYM URLZONE_INTRANET}
|
---|
1172 | URLZONE_INTRANET = URLZONE_LOCAL_MACHINE + 1;
|
---|
1173 | {$EXTERNALSYM URLZONE_TRUSTED}
|
---|
1174 | URLZONE_TRUSTED = URLZONE_INTRANET + 1;
|
---|
1175 | {$EXTERNALSYM URLZONE_INTERNET}
|
---|
1176 | URLZONE_INTERNET = URLZONE_TRUSTED + 1;
|
---|
1177 | {$EXTERNALSYM URLZONE_UNTRUSTED}
|
---|
1178 | URLZONE_UNTRUSTED = URLZONE_INTERNET + 1;
|
---|
1179 | {$EXTERNALSYM URLZONE_PREDEFINED_MAX}
|
---|
1180 | URLZONE_PREDEFINED_MAX = 999;
|
---|
1181 | {$EXTERNALSYM URLZONE_USER_MIN}
|
---|
1182 | URLZONE_USER_MIN = 1000;
|
---|
1183 | {$EXTERNALSYM URLZONE_USER_MAX}
|
---|
1184 | URLZONE_USER_MAX = 10000;
|
---|
1185 |
|
---|
1186 | {$EXTERNALSYM URLTEMPLATE_CUSTOM}
|
---|
1187 | URLTEMPLATE_CUSTOM = $00000000;
|
---|
1188 | {$EXTERNALSYM URLTEMPLATE_PREDEFINED_MIN}
|
---|
1189 | URLTEMPLATE_PREDEFINED_MIN = $00010000;
|
---|
1190 | {$EXTERNALSYM URLTEMPLATE_LOW}
|
---|
1191 | URLTEMPLATE_LOW = $00010000;
|
---|
1192 | {$EXTERNALSYM URLTEMPLATE_MEDIUM}
|
---|
1193 | URLTEMPLATE_MEDIUM = $00011000;
|
---|
1194 | {$EXTERNALSYM URLTEMPLATE_HIGH}
|
---|
1195 | URLTEMPLATE_HIGH = $00012000;
|
---|
1196 | {$EXTERNALSYM URLTEMPLATE_PREDEFINED_MAX}
|
---|
1197 | URLTEMPLATE_PREDEFINED_MAX = $00020000;
|
---|
1198 |
|
---|
1199 | {$EXTERNALSYM MAX_ZONE_PATH}
|
---|
1200 | MAX_ZONE_PATH = 260;
|
---|
1201 | {$EXTERNALSYM MAX_ZONE_DESCRIPTION}
|
---|
1202 | MAX_ZONE_DESCRIPTION = 200;
|
---|
1203 |
|
---|
1204 | {$EXTERNALSYM ZAFLAGS_CUSTOM_EDIT}
|
---|
1205 | ZAFLAGS_CUSTOM_EDIT = $00000001;
|
---|
1206 | {$EXTERNALSYM ZAFLAGS_ADD_SITES}
|
---|
1207 | ZAFLAGS_ADD_SITES = $00000002;
|
---|
1208 | {$EXTERNALSYM ZAFLAGS_REQUIRE_VERIFICATION}
|
---|
1209 | ZAFLAGS_REQUIRE_VERIFICATION = $00000004;
|
---|
1210 | {$EXTERNALSYM ZAFLAGS_INCLUDE_PROXY_OVERRIDE}
|
---|
1211 | ZAFLAGS_INCLUDE_PROXY_OVERRIDE = $00000008;
|
---|
1212 | {$EXTERNALSYM ZAFLAGS_INCLUDE_INTRANET_SITES}
|
---|
1213 | ZAFLAGS_INCLUDE_INTRANET_SITES = $00000010;
|
---|
1214 | {$EXTERNALSYM ZAFLAGS_NO_UI}
|
---|
1215 | ZAFLAGS_NO_UI = $00000020;
|
---|
1216 | {$EXTERNALSYM ZAFLAGS_SUPPORTS_VERIFICATION}
|
---|
1217 | ZAFLAGS_SUPPORTS_VERIFICATION = $00000040;
|
---|
1218 | {$EXTERNALSYM ZAFLAGS_UNC_AS_INTRANET}
|
---|
1219 | ZAFLAGS_UNC_AS_INTRANET = $00000080;
|
---|
1220 |
|
---|
1221 | type
|
---|
1222 | PZoneAttributes = ^TZoneAttributes;
|
---|
1223 | {$EXTERNALSYM _ZONEATTRIBUTES}
|
---|
1224 | _ZONEATTRIBUTES = packed record
|
---|
1225 | cbSize: ULONG;
|
---|
1226 | szDisplayName: array[0..260 - 1] of WideChar;
|
---|
1227 | szDescription: array[0..200 - 1] of WideChar;
|
---|
1228 | szIconPath: array[0..260 - 1] of WideChar;
|
---|
1229 | dwTemplateMinLevel: DWORD;
|
---|
1230 | dwTemplateRecommended: DWORD;
|
---|
1231 | dwTemplateCurrentLevel: DWORD;
|
---|
1232 | dwFlags: DWORD;
|
---|
1233 | end;
|
---|
1234 | TZoneAttributes = _ZONEATTRIBUTES;
|
---|
1235 | {$EXTERNALSYM ZONEATTRIBUTES}
|
---|
1236 | ZONEATTRIBUTES = _ZONEATTRIBUTES;
|
---|
1237 |
|
---|
1238 | // Gets the zone attributes (information in registry other than actual security
|
---|
1239 | // policies associated with the zone). Zone attributes are fixed as:
|
---|
1240 | // Sets the zone attributes (information in registry other than actual security
|
---|
1241 | // policies associated with the zone). Zone attributes as above.
|
---|
1242 | // Returns S_OK or ??? if failed to write the zone attributes.
|
---|
1243 | { Registry Flags
|
---|
1244 |
|
---|
1245 | When reading, default behavior is:
|
---|
1246 | If HKLM allows override and HKCU value exists
|
---|
1247 | Then use HKCU value
|
---|
1248 | Else use HKLM value
|
---|
1249 | When writing, default behavior is same as HKCU
|
---|
1250 | If HKLM allows override
|
---|
1251 | Then Write to HKCU
|
---|
1252 | Else Fail
|
---|
1253 | }
|
---|
1254 |
|
---|
1255 | const
|
---|
1256 | {$EXTERNALSYM URLZONEREG_DEFAULT}
|
---|
1257 | URLZONEREG_DEFAULT = 0;
|
---|
1258 | {$EXTERNALSYM URLZONEREG_HKLM}
|
---|
1259 | URLZONEREG_HKLM = URLZONEREG_DEFAULT + 1;
|
---|
1260 | {$EXTERNALSYM URLZONEREG_HKCU}
|
---|
1261 | URLZONEREG_HKCU = URLZONEREG_HKLM + 1;
|
---|
1262 |
|
---|
1263 | // Gets a named custom policy associated with a zone;
|
---|
1264 | // e.g. the Java VM settings can be defined with a unique key such as 'Java'.
|
---|
1265 | // Custom policy support is intended to allow extensibility from the predefined
|
---|
1266 | // set of policies that IE4 has built in.
|
---|
1267 | //
|
---|
1268 | // pwszKey is the string name designating the custom policy. Components are
|
---|
1269 | // responsible for having unique names.
|
---|
1270 | // ppPolicy is the callee allocated buffer for the policy byte blob; caller is
|
---|
1271 | // responsible for freeing this buffer eventually.
|
---|
1272 | // pcbPolicy is the size of the byte blob returned.
|
---|
1273 | // dwRegFlags determines how registry is accessed (see above).
|
---|
1274 | // Returns S_OK if key is found and buffer allocated; ??? if key is not found (no buffer alloced).
|
---|
1275 | // Sets a named custom policy associated with a zone;
|
---|
1276 | // e.g. the Java VM settings can be defined with a unique key such as 'Java'.
|
---|
1277 | // Custom policy support is intended to allow extensibility from the predefined
|
---|
1278 | // set of policies that IE4 has built in.
|
---|
1279 | //
|
---|
1280 | // pwszKey is the string name designating the custom policy. Components are
|
---|
1281 | // responsible for having unique names.
|
---|
1282 | // ppPolicy is the caller allocated buffer for the policy byte blob.
|
---|
1283 | // pcbPolicy is the size of the byte blob to be set.
|
---|
1284 | // dwRegFlags determines if HTCU or HKLM is set.
|
---|
1285 | // Returns S_OK or ??? if failed to write the zone custom policy.
|
---|
1286 | // Gets action policy associated with a zone, the builtin, fixed-length policies info.
|
---|
1287 |
|
---|
1288 | // dwAction is the action code for the action as defined above.
|
---|
1289 | // pPolicy is the caller allocated buffer for the policy data.
|
---|
1290 | // cbPolicy is the size of the caller allocated buffer.
|
---|
1291 | // dwRegFlags determines how registry is accessed (see above).
|
---|
1292 | // Returns S_OK if action is valid; ??? if action is not valid.
|
---|
1293 |
|
---|
1294 | type
|
---|
1295 | {$EXTERNALSYM IInternetZoneManager}
|
---|
1296 | IInternetZoneManager = interface
|
---|
1297 | ['{79eac9ef-baf9-11ce-8c82-00aa004ba90b}']
|
---|
1298 |
|
---|
1299 | // Gets the zone attributes (information in registry other than actual security
|
---|
1300 | // policies associated with the zone). Zone attributes are fixed as:
|
---|
1301 | function GetZoneAttributes(dwZone: DWORD;
|
---|
1302 | var ZoneAttributes: TZoneAttributes): HResult; stdcall;
|
---|
1303 |
|
---|
1304 | // Sets the zone attributes (information in registry other than actual security
|
---|
1305 | // policies associated with the zone). Zone attributes as above.
|
---|
1306 | // Returns S_OK or ??? if failed to write the zone attributes.
|
---|
1307 | function SetZoneAttributes(dwZone: DWORD;
|
---|
1308 | const ZoneAttributes: TZoneAttributes): HResult; stdcall;
|
---|
1309 | function GetZoneCustomPolicy(dwZone: DWORD; const guidKey: TGUID; out pPolicy: Pointer;
|
---|
1310 | out cbPolicy: DWORD; urlZoneReg: TUrlZoneReg): HResult; stdcall;
|
---|
1311 | function SetZoneCustomPolicy(dwZone: DWORD; const guidKey: TGUID; pPolicy: Pointer;
|
---|
1312 | cbPolicy: DWORD; urlZoneReg: TUrlZoneReg): HResult; stdcall;
|
---|
1313 | function GetZoneActionPolicy(dwZone, dwAction: DWORD; pPolicy: Pointer;
|
---|
1314 | cbPolicy: DWORD; urlZoneReg: TUrlZoneReg): HResult; stdcall;
|
---|
1315 | function SetZoneActionPolicy(dwZone, dwAction: DWORD; pPolicy: Pointer;
|
---|
1316 | cbPolicy: DWORD; urlZoneReg: TUrlZoneReg): HResult; stdcall;
|
---|
1317 | function PromptAction(dwAction: DWORD; hwndParent: HWnd; pwszUrl, pwszText: LPCWSTR;
|
---|
1318 | dwPromptFlags: DWORD): HResult; stdcall;
|
---|
1319 | function LogAction(dwAction: DWORD; pwszUrl, pwszText: LPCWSTR;
|
---|
1320 | dwLogFlags: DWORD): HResult; stdcall;
|
---|
1321 | function CreateZoneEnumerator(out dwEnum, dwCount: DWORD;
|
---|
1322 | dwFlags: DWORD): HResult; stdcall;
|
---|
1323 | function GetZoneAt(dwEnum, dwIndex: DWORD; out dwZone: DWORD): HResult; stdcall;
|
---|
1324 | function DestroyZoneEnumerator(dwEnum: DWORD): HResult; stdcall;
|
---|
1325 | function CopyTemplatePoliciesToZone(dwTemplate, dwZone, dwReserved: DWORD): HResult; stdcall;
|
---|
1326 | end;
|
---|
1327 |
|
---|
1328 | // Creates the security manager object. The first argument is the Service provider
|
---|
1329 | // to allow for delegation
|
---|
1330 | {$EXTERNALSYM CoInternetCreateSecurityManager}
|
---|
1331 | function CoInternetCreateSecurityManager(SP: IServiceProvider; var SM: IInternetSecurityManager;
|
---|
1332 | dwReserved: DWORD): HResult; stdcall;
|
---|
1333 | {$EXTERNALSYM CoInternetCreateZoneManager}
|
---|
1334 | function CoInternetCreateZoneManager(SP: IServiceProvider; var ZM: IInternetZoneManager;
|
---|
1335 | dwReserved: DWORD): HResult; stdcall;
|
---|
1336 |
|
---|
1337 |
|
---|
1338 |
|
---|
1339 | {$ENDIF}
|
---|
1340 |
|
---|
1341 | function SHLockShared(Handle: THandle; DWord: DWORD): Pointer; stdcall;
|
---|
1342 | function SHUnlockShared(Pnt: Pointer): BOOL; stdcall;
|
---|
1343 | function SHFreeShared(Handle: THandle; DWord: DWORD): Pointer; stdcall;
|
---|
1344 | function Free(Pidl: PItemIDList): BOOL; stdcall;
|
---|
1345 | function HtmlHelp(hwndCaller: HWND; pszFile: PChar; uCommand: Integer;
|
---|
1346 | dwData: DWORD): HWND; stdcall;
|
---|
1347 |
|
---|
1348 |
|
---|
1349 | implementation
|
---|
1350 |
|
---|
1351 | const
|
---|
1352 | urldll = 'url.dll';
|
---|
1353 |
|
---|
1354 | function InetIsOffline; external urldll name 'InetIsOffline';
|
---|
1355 |
|
---|
1356 | function MIMEAssociationDialogW; external urldll name 'MIMEAssociationDialogW';
|
---|
1357 | function MIMEAssociationDialogA; external urldll name 'MIMEAssociationDialogA';
|
---|
1358 | {$IFDEF UNICODE}
|
---|
1359 | function MIMEAssociationDialog; external urldll name 'MIMEAssociationDialogW';
|
---|
1360 | {$ELSE}
|
---|
1361 | function MIMEAssociationDialog; external urldll name 'MIMEAssociationDialogA';
|
---|
1362 | {$ENDIF}
|
---|
1363 |
|
---|
1364 | function URLAssociationDialogW; external urldll name 'URLAssociationDialogW';
|
---|
1365 | function URLAssociationDialogA; external urldll name 'URLAssociationDialogA';
|
---|
1366 | {$IFDEF UNICODE}
|
---|
1367 | function URLAssociationDialog; external urldll name 'URLAssociationDialogW';
|
---|
1368 | {$ELSE}
|
---|
1369 | function URLAssociationDialog; external urldll name 'URLAssociationDialogA';
|
---|
1370 | {$ENDIF}
|
---|
1371 |
|
---|
1372 | function TranslateURLA; external urldll name 'TranslateURLA';
|
---|
1373 | function TranslateURLW; external urldll name 'TranslateURLW';
|
---|
1374 | {$IFDEF UNICODE}
|
---|
1375 | function TranslateURL; external urldll name 'TranslateURLW';
|
---|
1376 | {$ELSE}
|
---|
1377 | function TranslateURL; external urldll name 'TranslateURLA';
|
---|
1378 | {$ENDIF}
|
---|
1379 |
|
---|
1380 |
|
---|
1381 |
|
---|
1382 | {$IFDEF VER120}
|
---|
1383 | const
|
---|
1384 | UrlMonLib = 'URLMON.DLL';
|
---|
1385 | function CoInternetGetSession; external UrlMonLib name 'CoInternetGetSession';
|
---|
1386 | function CoInternetCreateSecurityManager; external UrlMonLib name 'CoInternetCreateSecurityManager';
|
---|
1387 | function CoInternetCreateZoneManager; external UrlMonLib name 'CoInternetCreateZoneManager';
|
---|
1388 | {$ENDIF}
|
---|
1389 |
|
---|
1390 | function HtmlHelp(hwndCaller: HWND; pszFile: PChar; uCommand: Integer;
|
---|
1391 | dwData: DWORD): HWND; stdcall; external 'hhctrl.ocx' name 'HtmlHelpA';
|
---|
1392 |
|
---|
1393 |
|
---|
1394 | function SHLockShared; external 'shell32.dll' index 521;
|
---|
1395 | function SHUnlockShared; external 'shell32.dll' index 522;
|
---|
1396 | function SHFreeShared; external 'shell32.dll' index 523;
|
---|
1397 | function Free; external 'comctl32.dll' index 73;
|
---|
1398 |
|
---|
1399 |
|
---|
1400 | end.
|
---|
1401 |
|
---|
1402 |
|
---|