مقالات عن الحل لتصفية IE بدقة تحت VC:
http://blog.csdn.net/11122/archive/2002/02/09/7255.aspx
لتنفيذ Delphi ، هناك وحدة PAS:
وحدة ieconst ؛ واجهة يستخدم shlobj ، activex ، windows ؛ كونست iid_idochostuiHandler: tguid = '{bd3f23c0-d43e-11cf-893b-00aa00bdce1a}' ؛ iid_idochostuiHandler2: tguid = '{3050f6d0-98b5-11cf-bb82-00aa00bdce0b}' ؛ iid_idochostshowui: tguid = '{c4d244b0-d43e-11cf-893b-00aa00bdce1a}' ؛ Guid_trieditCommandGroup: tguid = '{2582f1c0-084e-11d1-9a0e-006097c9b344}' ؛ cmdsetid_forms3: tguid = '{de4ba900-59ca-11cf-9592-444553540000}' ؛ iid_iqueryinfo: tguid = (d1: $ 00021500 ؛ d2: $ 0000 ؛ d3: $ 0000 ؛ d4: ($ c0 ، $ 00 ، $ 00 ، $ 00 ، $ 00 ، $ 00 ، $ 00 ، $ 00 ، $ 00 ، $ 46) ؛ msocmdf_supported = olecmdf_supported ؛ msocmdf_enabled = olecmdf_enabled ؛ msocmdexecopt_promptuser = olecmdexecopt_promptuser ؛ msocmdexecopt_dontpromptuser = olecmdexecopt_dontpromptuser ؛ inchtometric = 25.4 ؛ no_command = 0 ؛ view_command = 1 ؛ explore_command = 2 ؛ Find_Command = 3 ؛ iSdigit = ['0' .. '9' ، '-' ، '+'] ؛ conext_menu_default = 0 ؛ conext_menu_image = 1 ؛ conext_menu_control = 2 ؛ conext_menu_table = 3 ؛ // في وضع المتصفح conext_menu_textselect = 4 ؛ conext_menu_anchor = 5 ؛ conext_menu_unknown = 6 ؛ // يتم تعيين هؤلاء 2 على صورة للجمهور ") conext_menu_imgdynsrc = 7 ؛ conext_menu_imgart = 8 ؛ conext_menu_debug = 9 ؛ conext_menu_vscroll = 10 ؛ conext_menu_hscroll = 11 ؛ dispid_ambient_dlcontrol = (-5512) ؛ dispid_ambient_useragent = (-5513) ؛ htmlid_find = 1 ؛ htmlid_viewsource = 2 ؛ htmlid_options = 3 ؛ dochostuitype_browse = 0 ؛ dochostuitype_author = 1 ؛ dochostuidblclk_default = 0 ؛ dochostuidblclk_showproperties = 1 ؛ dochostuidblclk_showcode = 2 ؛ dochostuiflag_dialog = $ 0001 ؛ dochostuiflag_disable_help_menu = $ 0002 ؛ dochostuiflag_no3dborder = $ 0004 ؛ dochostuiflag_scroll_no = $ 0008 ؛ dochostuiflag_disable_script_inactive = $ 0010 ؛ dochostuiflag_opennewwin = $ 0020 ؛ dochostuiflag_disable_offscreen = $ 0040 ؛ dochostuiflag_flat_scrollbar = $ 0080 ؛ dochostuiflag_div_blockdefault = $ 0100 ؛ dochostuiflag_active_clienthit_only = $ 0200 ؛ dochostuiflag_overrideBehaviorFactory = $ 0400 ؛ dochostuiflag_codepageLinkedFonts = $ 0800 ؛ dochostuiflag_url_encoding_disable_utf8 = $ 1000 ؛ dochostuiflag_url_encoding_enable_utf8 = $ 2000 ؛ dochostuiflag_enable_forms_autocplete = 4000 دولار ؛ dochostuiflag_enable_inplace_navigation = 10000 دولار ؛ dochostuiflag_ime_enable_reconversion = $ 20000 ؛ idm_unknown = 0 ؛ idm_alignbottom = 1 ؛ idm_alignhorizontalcenters = 2 ؛ idm_alignleft = 3 ؛ idm_alignright = 4 ؛ idm_aligntogrid = 5 ؛ idm_aligntop = 6 ؛ idm_alignverticalcenters = 7 ؛ idm_arrangeBottom = 8 ؛ idm_arrangeright = 9 ؛ idm_bringforward = 10 ؛ idm_bringtofront = 11 ؛ idm_centerhorizontally = 12 ؛ idm_centerververtally = 13 ؛ idm_code = 14 ؛ idm_delete = 17 ؛ idm_fontname = 18 ؛ idm_fontsize = 19 ؛ idm_group = 20 ؛ idm_horizspaceConcatenate = 21 ؛ idm_horizspacedecrease = 22 ؛ idm_horizspaceincrease = 23 ؛ idm_horizspacemakequal = 24 ؛ idm_insertObject = 25 ؛ idm_multilevelredo = 30 ؛ idm_sendbackward = 32 ؛ idm_sendtoback = 33 ؛ idm_showtable = 34 ؛ idm_sizetocontrol = 35 ؛ idm_sizetocontrolheight = 36 ؛ idm_sizetocontrolwidth = 37 ؛ idm_sizetofit = 38 ؛ idm_sizetogrid = 39 ؛ idm_snaptogrid = 40 ؛ idm_taborder = 41 ؛ idm_toolbox = 42 ؛ idm_multilevelundo = 44 ؛ idm_ungroup = 45 ؛ idm_vertspaceConcatenate = 46 ؛ idm_vertspacedecrease = 47 ؛ idm_vertspaceincrease = 48 ؛ idm_vertspacemakequal = 49 ؛ idm_justifyfull = 50 ؛ idm_backcolor = 51 ؛ idm_bold = 52 ؛ idm_bordercolor = 53 ؛ idm_flat = 54 ؛ idm_forecolor = 55 ؛ idm_italic = 56 ؛ idm_justifyCenter = 57 ؛ idm_justifyGeneral = 58 ؛ idm_justifyleft = 59 ؛ idm_justifyRight = 60 ؛ idm_raised = 61 ؛ idm_sunken = 62 ؛ idm_underline = 63 ؛ idm_chiseled = 64 ؛ idm_etched = 65 ؛ idm_shadowed = 66 ؛ idm_find = 67 ؛ idm_showgrid = 69 ؛ idm_objectverblist0 = 72 ؛ idm_objectverblist1 = 73 ؛ idm_objectverblist2 = 74 ؛ idm_objectverblist3 = 75 ؛ idm_objectverblist4 = 76 ؛ idm_objectverblist5 = 77 ؛ idm_objectverblist6 = 78 ؛ idm_objectverblist7 = 79 ؛ idm_objectverblist8 = 80 ؛ idm_objectverblist9 = 81 ؛ idm_convertobject = 82 ؛ idm_customControl = 83 ؛ idm_customizeItem = 84 ؛ idm_rename = 85 ؛ idm_import = 86 ؛ idm_newpage = 87 ؛ idm_move = 88 ؛ idm_cancel = 89 ؛ idm_font = 90 ؛ idm_strikethrough = 91 ؛ idm_deletword = 92 ؛ idm_follow_anchor = 2008 ؛ idm_insinputImage = 2114 ؛ idm_insinputButton = 2115 ؛ IDM_INSINPUTRESET = 2116 ؛ idm_insinputsubmit = 2117 ؛ idm_insinputupload = 2118 ؛ idm_insfieldset = 2119 ؛ idm_pasteinsert = 2120 ؛ idm_replace = 2121 ؛ idm_editsource = 2122 ؛ idm_bookmark = 2123 ؛ idm_hyperlink = 2124 ؛ idm_unlink = 2125 ؛ idm_browsemode = 2126 ؛ idm_editmode = 2127 ؛ idm_unbookmark = 2128 ؛ idm_toolbars = 2130 ؛ idm_statusbar = 2131 ؛ idm_formatmark = 2132 ؛ idm_textonly = 2133 ؛ idm_options = 2135 ؛ idm_followlinkc = 2136 ؛ idm_followlinkn = 2137 ؛ idm_viewsource = 2139 ؛ idm_zoompopup = 2140 ؛ // idm_baselinefont1 ، idm_baselinefont2 ، idm_baselinefont3 ، idm_baselinefont4 ، يجب أن تكون// idm_baselinefont5 أعداد صحيحة متتالية ؛ // idm_baselinefont1 = 2141 ؛ idm_baselinefont2 = 2142 ؛ idm_baselinefont3 = 2143 ؛ idm_baselinefont4 = 2144 ؛ idm_baselinefont5 = 2145 ؛ idm_horizontalline = 2150 ؛ idm_linebreaknormal = 2151 ؛ idm_linebreakleft = 2152 ؛ idm_lineBreakRight = 2153 ؛ idm_linebreakboth = 2154 ؛ idm_nonbreak = 2155 ؛ idm_specialchar = 2156 ؛ idm_htmlsource = 2157 ؛ idm_iframe = 2158 ؛ idm_htmlContain = 2159 ؛ idm_textbox = 2161 ؛ idm_textarea = 2162 ؛ idm_checkbox = 2163 ؛ idm_radiobutton = 2164 ؛ idm_dropdownbox = 2165 ؛ idm_listbox = 2166 ؛ idm_button = 2167 ؛ idm_image = 2168 ؛ idm_object = 2169 ؛ IDM_1D = 2170 ؛ idm_imagemap = 2171 ؛ idm_file = 2172 ؛ idm_comment = 2173 ؛ idm_script = 2174 ؛ idm_javaapplet = 2175 ؛ idm_plugin = 2176 ؛ idm_pageBreak = 2177 ؛ idm_paragraph = 2180 ؛ idm_form = 2181 ؛ idm_marquee = 2182 ؛ idm_list = 2183 ؛ idm_orderlist = 2184 ؛ idm_unorderlist = 2185 ؛ idm_indent = 2186 ؛ idm_outdent = 2187 ؛ idm_preformatted = 2188 ؛ idm_address = 2189 ؛ idm_blink = 2190 ؛ idm_div = 2191 ؛ idm_tableInsert = 2200 ؛ idm_rcinsert = 2201 ؛ idm_cellinsert = 2202 ؛ idm_captionInsert = 2203 ؛ idm_cellmerge = 2204 ؛ idm_cellsplit = 2205 ؛ idm_cellselect = 2206 ؛ idm_rowselect = 2207 ؛ idm_columnselect = 2208 ؛ idm_tableselect = 2209 ؛ idm_tableProperties = 2210 ؛ idm_cellproperties = 2211 ؛ idm_rowinsert = 2212 ؛ idm_columninsert = 2213 ؛ idm_help_content = 2220 ؛ idm_help_about = 2221 ؛ idm_help_readme = 2222 ؛ idm_removeformat = 2230 ؛ idm_pageinfo = 2231 ؛ idm_teletype = 2232 ؛ idm_getblockfmts = 2233 ؛ idm_blockfmt = 2234 ؛ idm_showhide_code = 2235 ؛ idm_table = 2236 ؛ idm_copyformat = 2237 ؛ idm_pasteformat = 2238 ؛ idm_goto = 2239 ؛ idm_changefont = 2240 ؛ idm_changefontsize = 2241 ؛ idm_incfontsize = 2242 ؛ idm_decfontsize = 2243 ؛ idm_incfontsize1pt = 2244 ؛ idm_decfontsize1pt = 2245 ؛ idm_changecase = 2246 ؛ idm_subscript = 2247 ؛ idm_superscript = 2248 ؛ idm_showspecialchar = 2249 ؛ idm_centeralignpara = 2250 ؛ IDM_LEFTALIGNPARA = 2251 ؛ idm_rightalignpara = 2252 ؛ idm_removeParaFormat = 2253 ؛ idm_applynormal = 2254 ؛ idm_applyHeading1 = 2255 ؛ idm_applyHeading2 = 2256 ؛ idm_applyHeading3 = 2257 ؛ idm_docproperties = 2260 ؛ idm_addfavorites = 2261 ؛ idm_copyshortcut = 2262 ؛ idm_savebackground = 2263 ؛ idm_setwallpaper = 2264 ؛ idm_copybackground = 2265 ؛ idm_createshortcut = 2266 ؛ IDM_PAGE = 2267 ؛ idm_savetarget = 2268 ؛ idm_showpicture = 2269 ؛ idm_savepicture = 2270 ؛ idm_dynsrcplay = 2271 ؛ idm_dynsrcstop = 2272 ؛ idm_printtarget = 2273 ؛ idm_imgartplay = 2274 ؛ idm_imgartstop = 2275 ؛ idm_imgartrewind = 2276 ؛ idm_printqueryjobspending = 2277 ؛ idm_contextMenu = 2280 ؛ idm_gobackward = 2282 ؛ idm_goforward = 2283 ؛ idm_prestop = 2284 ؛ idm_createLink = 2290 ؛ idm_copyContent = 2291 ؛ idm_language = 2292 ؛ idm_refresh = 2300 ؛ idm_stopdownload = 2301 ؛ idm_enable_interaction = 2302 ؛ idm_launchdebugger = 2310 ؛ idm_breakatnext = 2311 ؛ idm_insinputhidden = 2312 ؛ IDM_INSINPAPSPASSWORD = 2313 ؛ idm_overwrite = 2314 ؛ idm_parsecplete = 2315 ؛ idm_htmleditmode = 2316 ؛ idm_registryRefresh = 2317 ؛ IDM_COMPOSESETTINGS = 2318 ؛ idm_showalltags = 2320 ؛ idm_showalignedSiteTags = 2321 ؛ idm_showscriptTags = 2322 ؛ idm_showstyletags = 2323 ؛ idm_showCommentTags = 2324 ؛ idm_showareatags = 2325 ؛ idm_showunknowntags = 2326 ؛ idm_showmisctags = 2327 ؛ idm_showzerObordAratDesignTime = 2328 ؛ IDM_AUTODETECT = 2329 ؛ idm_scriptDebugger = 2330 ؛ idm_getBytesDownloaded = 2331 ؛ idm_noactivateNormalOleControls = 2332 ؛ idm_noactivatedesigntimeControls = 2333 ؛ idm_noactivatejavaapplets = 2334 ؛ idm_showwbrtags = 2340 ؛ idm_persistsstreamsync = 2341 ؛ idm_setdirty = 2342 ؛ idm_mimecset__first__ = 3609 ؛ idm_mimecset__last__ = 3640 ؛ idm_menuext_first__ = 3700 ؛ idm_menuext_last__ = 3732 ؛ idm_menuext_count = 3733 ؛ ID_EDITMODE = 32801 ؛ idm_open = 2000 ؛ idm_new = 2001 ؛ idm_save = 70 ؛ idm_saveas = 71 ؛ idm_savecopyas = 2002 ؛ idm_printpreview = 2003 ؛ idm_print = 27 ؛ idm_pagesetup = 2004 ؛ idm_spell = 2005 ؛ idm_pastespecial = 2006 ؛ IDM_CLEARSELECTION = 2007 ؛ idm_properties = 28 ؛ idm_redo = 29 ؛ idm_undo = 43 ؛ idm_selectall = 31 ؛ idm_zoompercent = 50 ؛ idm_getzoom = 68 ؛ idm_stop = 2138 ؛ idm_copy = 15 ؛ idm_cut = 16 ؛ idm_paste = 26 ؛ idm_tried_is_1d_element = 0 ؛ idm_tried_is_2d_element = 1 ؛ idm_tried_nudge_element = 2 ؛ idm_tried_set_alignment = 3 ؛ idm_tried_make_absolute = 4 ؛ idm_tried_lock_element = 5 ؛ idm_tried_send_to_back = 6 ؛ idm_tried_send_to_front = 7 ؛ idm_tried_send_backward = 8 ؛ idm_tried_send_forward = 9 ؛ idm_tried_send_behind_1d = 10 ؛ idm_tried_send_front_1d = 11 ؛ idm_tried_constrain = 12 ؛ idm_tried_set_2d_drop_mode = 13 ؛ idm_tried_insertrow = 14 ؛ idm_tried_insertcol = 15 ؛ IDM_TRIED_DELETROWS = 16 ؛ idm_tried_deletecols = 17 ؛ idm_tried_mergecells = 18 ؛ idm_tried_splitcell = 19 ؛ idm_tried_insertcell = 20 ؛ idm_tried_deletecells = 21 ؛ idm_tried_inserttable = 22 ؛ // تحذير تحذير !!! // عند إضافة معرفات أمر جديد idm_tried_last_cid = idm_tried_inserttable ؛ clsid_webbrowser: tguid = '{ed016940-bd5b-11cf-ba4e-00c04fd70816}' ؛ يكتب pdochostuiinfo = ^tdochostuiinfo ؛ tdochostuiinfo = سجل CBSISE: Ulong ؛ dwflags: dword ؛ dwdoubleclick: dword ؛ chhostcss: polestr ؛ chhostns: polest. نهاية؛ idochostshowui = واجهة (iunknown) ['{c4d244b0-d43e-11cf-893b-00aa00bdce1a}'] وظيفة showmessage (hwnd: thandle ؛ lpttrtext: polestr ؛ lpstrcaption: polestr ؛ dwtype: longint ؛ var plresult: lresult): Hresult ؛ وظيفة showhelp (hwnd: thandle ؛ pszhelpfile: polestr ؛ uCommand: integer ؛ Dwdata: Longint ؛ var pdispatchobjecthit: idispatch): hresult ؛ نهاية idochostuiHandler = واجهة (iunknown) ['{bd3f23c0-d43e-11cf-893b-00aa00bdce1a}'] وظيفة showContextMenu (const dwid: dword ؛ const ppt: ppoint ؛ const pcmdtreserved: iunknown ؛ وظيفة gethostinfo (var pinfo: tdochostuiinfo): hresult ؛ وظيفة showui (const dwid: dword ؛ const pactiveoBject: ioleinplaceactiveObject ؛ Const PcommandTarget: IoleCommandTarget ؛ const pdoc: ioleinplaceuiwindow): hresult ؛ وظيفة hideui: هريسولت ؛ وظيفة updateui: hresult ؛ الوظيفة التي لا يمكن أن تكون (const fenable: bool): hresult ؛ وظيفة ondocwindowactive (constative: bool): hresult ؛ وظيفة onframewindowActive (constative: bool): hresult ؛ وظيفة ResizeBorder (const prcborder: prect ؛ const puiwindow: ioleinplaceuiwindow ؛ Const Framewindow: Bool): Hresult ؛ وظيفة translateaccelerator (const lpmsg: pmsg ؛ const pguidcmdgroup: pguid ؛ const ncmdid: dword): hresult ؛ وظيفة getOptionkeypath (var pchkey: polest ؛ const dw: dword): hresult ؛ وظيفة getDropTarget (const pdroptarget: idroptarget ؛ Out PpdropTarget: Idroptarget): Hresult ؛ وظيفة getExtern (خارج ppdispatch: idispatch): hresult ؛ وظيفة TranslateUrl (const dwtranslate: dword ؛ const pchurlin: polestr ؛ var ppchurlout: polest): hresult ؛ وظيفة filterDataObject (const pDO: idataObject ؛ Out Ppdoret: idataobject): Hresult ؛ نهاية idochostuiHandler2 = واجهة (iunknown) ['{3050f6d0-98b5-11cf-bb82-00aa00bdce0b}'] وظيفة getOverridekeypath (pchkey: polestr ؛ dw: dword): hresult ؛ نهاية؛ كونست iid_iuniformResourCoraTa: tguid = ( D1: $ FBF23B80 ؛ iid_iuniformResourCorww: tguid = ( D1: $ CABB0DA0 ؛ {$ IFDEF UNICODE} iid_iuniformResourCorator: tguid = ( D1: $ CABB0DA0 ؛ {$ else} iid_iuniformResourCorator: tguid = ( D1: $ FBF23B80 ؛ {$ endif} كونست CLSID_INTERNETSHORTCUT: tguid = ( D1: $ FBF23B40 ؛ Sid_iuniformResourCoraTa = '{fbf23b80-e3f0-101b-8488-00aa003e56f8}' ؛ Sid_iuniformResourcorww = '{cabb0da0-da57-11cf-9974-0020afd79762}' ؛ {$ IFDEF UNICODE} Sid_iuniformResourCorator = sid_iuniformResourCoriTw ؛ {$ else} Sid_iuniformResourCorator = sid_iuniformResourCoraTa ؛ {$ endif} IURL_SETURL_FL_GUESS_PROTOCOL = $ 0001 ؛ iurl_seturl_fl_use_default_protocol = $ 0002 ؛ iurl_invokecommand_fl_allow_ui = $ 0001 ؛ IURL_INVOKECOMMAND_FL_USE_DEFAULT_VERB = $ 0002 ؛ IURL_INVOKECOMMAND_FL_DDEWAIT = $ 0004 ؛ translateurl_fl_guess_protocol = $ 0001 ؛ translateurl_fl_use_default_protocol = $ 0002 ؛ urlassocdlg_fl_use_default_name = $ 0001 ؛ urlassocdlg_fl_register_assoc = $ 0002 ؛ mimeassocdlg_fl_register_assoc = $ 0001 ؛ يكتب purlinvokecommandinfoa = ^turlinvokecommandinfoa ؛ TurlinvokecommandInfoa = سجل DWCBSISE: DWORD ؛ DWFLAGS: DWORD ؛ Hwndparent: HWND ؛ PCSZVERB: LPCSTR ؛ نهاية؛ purlinvokecommandinfow = ^turlinvokecommandinfow ؛ TurlinvokecommandInfow = سجل DWCBSISE: DWORD ؛ DWFLAGS: DWORD ؛ Hwndparent: HWND ؛ PCSZVERB: LPCWSTR ؛ نهاية؛ {$ IFDEF UNICODE} purlinvokecommandinfo = ^turlinvokecommandinfow ؛ turlinvokecommandinfo = turlinvokecommandinfow ؛ {$ else} purlinvokecommandinfo = ^turlinvokecommandinfoa ؛ turlinvokecommandinfo = turlinvokecommandinfoa ؛ {$ endif} iuniformResourcoraTa = واجهة (iunknown) [sid_iuniformResourCoraTa] وظيفة seturl (pcszurl: lpcstr ؛ dwinflags: dword): hresult ؛ وظيفة geturl (ppszurl: LPSTR): hresult ؛ وظيفة invokecommand (purlici: purlinvokecommandinfoa): hresult ؛ نهاية؛ IuniformResourCoriTw = واجهة (iunknown) [sid_iuniformResourCorww] وظيفة seturl (pcszurl: lpcwstr ؛ dwinflags: dword): hresult ؛ وظيفة geturl (ppszurl: lpwstr): hresult ؛ وظيفة invokecommand (purlici: purlinvokecommandinfow): hresult ؛ نهاية؛ {$ IFDEF UNICODE} IuniformResourCorator = iuniformResourCoriTw ؛ {$ else} IuniformResourCorator = iuniformResourcoracatora ؛ {$ endif} وظيفة Translateurla (PCSZurl: LPCSTR ؛ dwinflags: dword ؛ ppsztranslatedurl: LPSTR): hresult ؛ وظيفة TranslateUrlw (PCSZurl: LPCWSTR ؛ dwinflags: dword ؛ ppsztranslatedurl: lpwstr): hresult ؛ {$ IFDEF UNICODE} وظيفة TranslateUrl (PCSZurl: LPCWSTR ؛ dwinflags: dword ؛ ppsztranslatedurl: lpwstr): hresult ؛ {$ else} وظيفة TranslateUrl (PCSZurl: LPCSTR ؛ dwinflags: dword ؛ ppsztranslatedurl: LPSTR): hresult ؛ {$ endif} وظيفة urlassociationDialoga (hwndparent: hwnd ؛ dwinflags: dword ؛ PCSZFILE: LPCSTR ؛ PCSZurl: LPCSTR ؛ pszappbuf: LPSTR ؛ ucappbuflen: uint): hresult ؛ وظيفة urlassociationDialogw (hwndparent: hwnd ؛ dwinflags: dword ؛ PCSzfile: LPCWSTR ؛ PCSZurl: LPCWSTR ؛ pszappbuf: LPWSTR ؛ ucappbuflen: uint): hresult ؛ {$ IFDEF UNICODE} وظيفة urlassociationDialog (hwndparent: hwnd ؛ dwinflags: dword ؛ PCSzfile: LPCWSTR ؛ PCSZurl: LPCWSTR ؛ pszappbuf: LPWSTR ؛ ucappbuflen: uint): hresult ؛ {$ else} وظيفة urlassociationDialog (hwndparent: hwnd ؛ dwinflags: dword ؛ PCSZFILE: LPCSTR ؛ PCSZurl: LPCSTR ؛ pszappbuf: LPSTR ؛ ucappbuflen: uint): hresult ؛ {$ endif} وظيفة mimeassociationDialoga (hwndparent: hwnd ؛ dwinflags: dword ؛ PCSZFILE: LPCSTR ؛ pcszmimeContentType: LPCSTR ؛ pszappbuf: LPSTR ؛ ucappbuflen: uint): hresult ؛ وظيفة mimeassociationDialogw (hwndparent: hwnd ؛ dwinflags: dword ؛ PCSzfile: LPCWSTR ؛ pcszmimeContentType: lpcwstr ؛ pszappbuf: LPWSTR ؛ ucappbuflen: uint): hresult ؛ {$ IFDEF UNICODE} وظيفة mimeassociationDialog (hwndparent: hwnd ؛ dwinflags: dword ؛ PCSzfile: LPCWSTR ؛ pcszmimeContentType: lpcwstr ؛ pszappbuf: LPWSTR ؛ ucappbuflen: uint): hresult ؛ {$ else} وظيفة mimeassociationDialog (hwndparent: hwnd ؛ dwinflags: dword ؛ PCSZFILE: LPCSTR ؛ pcszmimeContentType: LPCSTR ؛ pszappbuf: LPSTR ؛ ucappbuflen: uint): hresult ؛ {$ endif} وظيفة inetisoffline (dwflags: dword): bool ؛ {$ ifdef ver120} كونست iid_iiinternetsession: tguid = '{79eac9e7-baf9-11ce-8c82-00aa004ba90b}' ؛ iid_iiinternetsecuritymgrsite: tguid = '{79eac9ed-baf9-11ce-8c82-00aa004ba90b}' ؛ iid_iiinternetSecurityManager: tguid = '{79eac9ee-baf9-11ce-8c82-00aa004ba90b}' ؛ IID_IINTERNETHOSTSERUSITYMANAGER: tguid = '{3AF280B6-CB3F-11D0-891E-00C04FB6BFC4}' ؛ Sid_iiinternetSecurityManager: tguid = '{79eac9ee-baf9-11ce-8c82-00aa004ba90b}' ؛ SID_IIINTERNETHOSTSERITYMANAGER: tguid = '{3AF280B6-CB3F-11D0-891E-00C04FB6BFC4}' ؛ iid_iiinternetzonemanager: tguid = '{79eac9ef-baf9-11ce-8c82-00aa004ba90b}' ؛ يكتب Turlzonereg = Ulong ؛ pbindinfo = ^tbindinfo ؛ _tagbindinfo = سجل معبأ CBSISE: Ulong ؛ szextrainfo: lpwstr ؛ stgmeddata: tstgmedium ؛ grfbindinfof: dword ؛ dwBindverb: dword ؛ szcustomverb: lpwstr ؛ CBSTGMEDDATA: DWORD ؛ dwoptions: dword ؛ dwoptionsflags: dword ؛ dwCodepage: dword ؛ SecurityAttributes: tsecurityattributes ؛ IID: tguid ؛ الشرير: iunknown ؛ dwreserved: dword ؛ نهاية؛ tbindinfo = _tagbindinfo ؛ bindInfo = _tagbindinfo ؛ {$ nodefine polestrarray} polestrarray = ^tolestrarray ؛ {$ nodefine tolestrarray} tolestrarray = صفيف [0..maxlongint div sizeof (polest) - 1] من polestr ؛ {$ externalsym iinternetbindinfo} iinternetbindinfo = واجهة ['{79EAC9E1-BAF9-11CE-8C82-00AA004BA90B}'] وظيفة getBindInfo (Out grfbindf: dword ؛ var bindinfo: tbindinfo): hresult ؛ وظيفة getBindString (UlstringType: Ulong ؛ WZSTR: Polestrarray ؛ Cel: Ulong ؛ var celfetched: Ulong): Hresult ؛ نهاية؛ pprotocoldata = ^tprotocoldata ؛ {$ externalsym _tagprotocoldata} _tagprotocoldata = سجل معبأ gfflags: dword ؛ DWSTATE: DWORD ؛ PDATA: مؤشر ؛ CBDATA: Ulong ؛ نهاية؛ tprotocoldata = _tagprotocoldata ؛ {$ externalsym _tagprotocoldata} protocoldata = _tagprotocoldata ؛ {$ externalsym iinternetprotocolsink} iinternetprotocolsink = واجهة ؛ {$ externalsym iinternetprotocolroot} iinternetprotocolroot = واجهة ['{79EAC9E3-BAF9-11CE-8C82-00AA004BA90B}'] بدء الوظيفة (szurl: lpcwstr ؛ oiprotsink: iinternetprotocolsink ؛ Oibindinfo: iinternetbindinfo ؛ وظيفة متابعة (const protocoldata: tprotocoldata): hresult ؛ إحباط الوظيفة (HrReason: Hresult ؛ dwoptions: dword): Hresult ؛ إنهاء الوظيفة (dwoptions: dword): Hresult ؛ وظيفة تعليق: هريسولت ؛ استئناف الوظيفة: هيرسولت ؛ نهاية؛ {$ externalsym iinternetprotocol} iinternetprotocol = واجهة (iiinternetprotocolroot) ['{79EAC9E4-BAF9-11CE-8C82-00AA004BA90B}'] قراءة الوظيفة (PV: Pointer ؛ CB: Ulong ؛ Out Cbread: Ulong): Hresult ؛ وظيفة البحث (dlibmove: large_integer ؛ dworigin: dword ؛ Out libnewposition: ularge_integer): hresult ؛ وظيفة lockrequest (dwoptions: dword): Hresult ؛ وظيفة infockRequest: Hresult ؛ نهاية؛ {$ externalsym iinternetprotocolsink} iinternetprotocolsink = واجهة ['{79EAC9E5-BAF9-11CE-8C82-00AA004BA90B}'] مفتاح الوظيفة (const protocoldata: tprotocoldata): Hresult ؛ Function ReportProgress (Ulstatuscode: Ulong ؛ SzStatustext: LPCWST): Hresult ؛ Function ReportData (GRFBSCF: DWORD ؛ Ulprogress ، UlprogressMax: Ulong): Hresult ؛ وظيفة reportresult (hrresult: hresult ؛ dwerror: dword ؛ szresult: lpcwstr): hresult ؛ نهاية؛ {$ nodefine tlpcwstrarray} tlpcwstrarray = صفيف [0..maxlongint div sizeof (lpcwstr) - 1] من lpcwstr ؛ {$ nodefine plpcwstrarray} plpcwstrarray = ^tlpcwstrarray ؛ {$ externalsym iinternetsession} iinternetsession = واجهة ['{79EAC9E7-BAF9-11CE-8C82-00AA004BA90B}'] وظيفة registerNamesPace (CF: ICLassFactory ؛ const clsid: tclsid ؛ pwzprotocol: lpcwstr ؛ cpatterns: ulong ؛ وظيفة unregisterNamespace (CF: ICLASSFACTORY ؛ PSZPROTOCOL: LPCWSTR): HRESULT ؛ وظيفة registerMimeFilter (CF: ICLassFactory ؛ const rclsid: tclsid ؛ pwztype: lpcwstr): hresult ؛ وظيفة unregistermimefilter (cf: iclassfactory ؛ pwztype: lpcwstr): hresult ؛ وظيفة createBinding (bc: ibindctx ؛ szurl: lpcwstr ؛ unkouter: iunknown ؛ unk: iunknown ؛ Out Oinetprot: iinternetprotocol ؛ SetSessionOption (dwOption: dword ؛ pbuffer: pointer ؛ dwBufferLength: dword ؛ Dwreserved: Dword): Hresult ؛ وظيفة getSessionOption (dwOption: dword ؛ pbuffer: pointer ؛ var dwbufferlength: dword ؛ Dwreserved: Dword): Hresult ؛ نهاية {$ externalsymym cointernetsentess} وظيفة cointernetgetsession (dwSessionMode: dword ؛ var piinternetsession: iinternetsession ؛ Dwreserved: Dword): Hresult ؛ يكتب {$ externalsym iinternetsecuritymgrsite} iinternetSecurityMgrsite = واجهة ['{79EAC9ED-BAF9-11CE-8C82-00AA004BA90B}'] وظيفة getWindow (خارج hwnd: hwnd): hresult ؛ وظيفة لا يمكن التمكين (fenable: bool): hresult ؛ نهاية؛ كونست {$ externalsym max_size_security_id} max_size_security_id = 512 ؛ // mapurltozone إرجاع فهرس المنطقة المعطى عنوان URL {$ externalsym puaf_default} PUAF_DEFAULT = $ 00000000 ؛ {$ externalsym puaf_noui} puaf_noui = $ 00000001 ؛ {$ externalsym puaf_isfile} puaf_isfile = $ 00000002 ؛ {$ externalsym puaf_warn_if_denied} PUAF_WARN_IF_DENIED = $ 00000004 ؛ {$ externalsym puaf_forceui_foreground} puaf_forceui_foreground = $ 0000008 ؛ {$ externalsym puaf_check_tifs} PUAF_CHECK_TIFS = $ 00000010 ؛ // هذه هي وظيفة الغلاف التي سيستخدمها معظم العملاء. // إنه يعدد السياسة الحالية التي تم تمريرها في العمل ، // ويضع واجهة المستخدم إذا كانت السياسة الحالية تشير إلى أن المستخدم // يجب أن يتم الاستعلام عنها. // سوف تستخدم لتحديد ما إذا كان ينبغي السماح الإجراء // هذه هي وظيفة التفاف لقراءة سياسة مخصصة مريحة. // setzonemapping // lpszpattern: سلسلة تشير إلى نمط عنوان URL // أمثلة على الأنماط الصالحة: // *: //*.msn.com // http: //*.sony.co.jp // *: //et.msn.com // ftp://157.54.23.41/ // https: // facalsvr // file:/facalsvr/share // *: //157.54.100-200.* // أمثلة على الأنماط غير الصالحة: // http: //*.lcs.mit.edu // ftp: //* // dwflags: قيم szm_flags {$ externalsym szm_create} szm_create = $ 00000000 ؛ {$ externalsym szm_delete} szm_delete = $ 00000001 ؛ يكتب {$ externalsym iinternetSecurityManager} iinternetSecurityManager = واجهة ['{79EAC9EE-BAF9-11CE-8C82-00AA004BA90B}'] وظيفة SetSecuritySite (الموقع: iinternetsecuritymgrsite): Hresult ؛ وظيفة GetSecuritySite (موقع خارج: iinternetsecuritymgrsite): Hresult ؛ وظيفة mapurltozone (pwszurl: lpcwstr ؛ out dwzone: dword ؛ dwflags: dword): hresult ؛ وظيفة getSecurityId (pwszurl: lpcwstr ؛ pbsecurityid: مؤشر ؛ var cbsecurityid: dword ؛ وظيفة processurlaction (pwszurl: lpcwstr ؛ dwaction: dword ؛ ppolicy: مؤشر ؛ dwflags ، dwreserved: dword): hresult ؛ وظيفة QueryCustompolicy (pwszurl: lpcwstr ؛ const guidkey: tguid ؛ Out Ppolicy: Pointer ؛ Dwreserved: Dword): Hresult ؛ وظيفة setZonemapp (dwZone: dword ؛ lpszpattern: lpcwstr ؛ dwflags: dword): hresult ؛ وظيفة getzonemapsings (dwZone: dword ؛ out enumstring: ienumstring ؛ dwflags: dword): hresult ؛ نهاية؛ {$ externalesym iinternethostsecuritymanager} iinternethostsecurityManager = واجهة ['{3AF280B6-CB3F-11D0-891E-00C04FB6BFC4}'] وظيفة getSecurityId (PBSErityID: مؤشر ؛ var cbsecurityid: dword ؛ Dwreserved: Dword): Hresult ؛ وظيفة ProcessUrlaction (dwAction: dword ؛ ppolicy: pointer ؛ cbpolicy: dword ؛ pcontext: pointer ؛ وظيفة QueryCustompolicy (const Guidkey: tguid ؛ Out ppolicy: pointer ؛ Out Cbpolicy: dword ؛ pcontext: pointer ؛ نهاية؛ كونست {$ externalsym urlaction_min} urlaction_min = $ 00001000 ؛ {$ externalsym urlaction_download_min} urlaction_download_min = $ 00001000 ؛ {$ externalsym urlaction_download_signed_active} urlaction_download_signed_activex = $ 00001001 ؛ {$ externalsym urlaction_download_unsigned_active} urlaction_download_unsigned_active = $ 00001004 ؛ {$ externalsym urlaction_download_curr_max} urlaction_download_curr_max = $ 00001004 ؛ {$ externalsym urlaction_download_max} urlaction_download_max = $ 000011ff ؛ {$ externalsym urlaction_active_min} urlaction_active_min = $ 00001200 ؛ {$ externalsym urlaction_activex_run} urlaction_active_run = $ 00001200 ؛ {$ externalsym urlaction_activex_override_object_safety} urlaction_active_override_object_safety = $ 00001201 ؛ {$ externalsym urlaction_activex_override_data_safety} urlaction_active_override_data_safety = $ 00001202 ؛ {$ externalsym urlaction_activex_override_script_safety} urlaction_active_override_script_safety = $ 00001203 ؛ {$ externalsym urlaction_script_override_safety} urlaction_script_override_safety = $ 00001401 ؛ {$ externalsym urlaction_active_confirm_noobjectsafety} urlaction_active_confirm_noobjectsafety = $ 00001204 ؛ {$ externalsym urlaction_activex_treatasuntrusted} urlaction_activex_treatasuntrusted = $ 00001205 ؛ {$ externalsym urlaction_activex_curr_max} urlaction_activex_curr_max = $ 00001205 ؛ {$ externalsym urlaction_active_max} urlaction_activex_max = $ 000013ff ؛ {$ externalsym urlaction_script_min} urlaction_script_min = $ 00001400 ؛ {$ externalsym urlaction_script_run} urlaction_script_run = $ 00001400 ؛ {$ externalsym urlaction_script_java_use} urlaction_script_java_use = $ 00001402 ؛ {$ externalsym urlaction_script_safe_active} urlaction_script_safe_active = $ 00001405 ؛ {$ externalsym urlaction_script_curr_max} urlaction_script_curr_max = $ 00001405 ؛ {$ externalsym urlaction_script_max} urlaction_script_max = $ 000015ff ؛ {$ externalsym urlaction_html_min} urlaction_html_min = $ 00001600 ؛ {$ externalsym urlaction_html_submit_forms} urlaction_html_submit_forms = $ 00001601 ؛ {$ externalsym urlaction_html_submit_forms_from} urlaction_html_submit_forms_from = $ 00001602 ؛ {$ externalsym urlaction_html_submit_forms_to} urlaction_html_submit_forms_to = $ 00001603 ؛ {$ externalsym urlaction_html_font_download} urlaction_html_font_download = $ 00001604 ؛ {$ externalsym urlaction_html_java_run} urlaction_html_java_run = $ 00001605 ؛ {$ externalsym urlaction_html_curr_max} urlaction_html_curr_max = $ 00001605 ؛ {$ externalsym urlaction_html_max} urlaction_html_max = $ 000017ff ؛ {$ externalsym urlaction_shell_min} urlaction_shell_min = $ 00001800 ؛ {$ externalsym urlaction_shell_install_dtitems} urlaction_shell_install_dtitems = $ 00001800 ؛ {$ externalsym urlaction_shell_move_or_copy} urlaction_shell_move_or_copy = $ 00001802 ؛ {$ externalsym urlaction_shell_file_download} urlaction_shell_file_download = $ 00001803 ؛ {$ externalsym urlaction_shell_verb} urlaction_shell_verb = $ 00001804 ؛ {$ externalsym urlaction_shell_webview_verb} urlaction_shell_webview_verb = $ 00001805 ؛ {$ externalsym urlaction_shell_curr_max} urlaction_shell_curr_max = $ 00001805 ؛ {$ externalsym urlaction_shell_max} urlaction_shell_max = $ 000019ff ؛ {$ externalsym urlaction_network_min} urlaction_network_min = $ 00001a00 ؛ {$ externalsym urlaction_credentials_use} urlaction_credentials_use = $ 00001a00 ؛ {$ externalsym urlpolicy_credentials_silent_logon_ok} urlpolicy_credentials_silent_logon_ok = $ 0000000 ؛ {$ externalsym urlpolicy_credentials_must_prompt_user} urlpolicy_credentials_must_prompt_user = $ 00010000 ؛ {$ externalsym urlpolicy_credentials_conditional_prompt} urlpolicy_credentials_conditional_prompt = $ 00020000 ؛ {$ externalsym urlpolicy_credentials_anymons_only} urlpolicy_credentials_anymon_only = $ 00030000 ؛ {$ externalsym urlaction_authenticate_client} urlaction_authenticate_client = $ 00001a01 ؛ {$ externalsym urlpolicy_authenticate_cleartext_ok} urlpolicy_authenticate_cleartext_ok = $ 00000000 ؛ {$ externalsym urlpolicy_authenticate_challenge_response} urlpolicy_authenticate_challenge_response = $ 00010000 ؛ {$ externalsym urlpolicy_authenticate_mutual_only} urlpolicy_authenticate_mutual_only = $ 00030000 ؛ {$ externalsym urlaction_network_curr_max} urlaction_network_curr_max = $ 00001A01 ؛ {$ externalsym urlaction_network_max} urlaction_network_max = $ 00001BFF ؛ {$ externalsym urlaction_java_min} urlaction_java_min = $ 00001C00 ؛ {$ externalsym urlaction_java_permissions} urlaction_java_permissions = $ 00001C00 ؛ {$ externalsym urlpolicy_java_prohibit} urlpolicy_java_prohibit = $ 00000000 ؛ {$ externalsym urlpolicy_java_high} urlpolicy_java_high = $ 00010000 ؛ {$ externalsym urlpolicy_java_medium} urlpolicy_java_medium = $ 00020000 ؛ {$ externalsym urlpolicy_java_low} urlpolicy_java_low = $ 00030000 ؛ {$ externalsym urlpolicy_java_custom} urlpolicy_java_custom = $ 00800000 ؛ {$ externalsym urlaction_java_curr_max} urlaction_java_curr_max = $ 00001C00 ؛ {$ externalsym urlaction_java_max} urlaction_java_max = $ 00001CFF ؛ // لا ينبغي أن يكون لإجراءات التوريد اللاإرادية سياسات افتراضية // في السجل. // العودة إلى القيود العالمية. // Zone ، ثم يتجاوز القيود العالمية. {$ externalsym urlaction_infodelivery_min} urlaction_infodelivery_min = $ 00001d00 ؛ {$ externalsym urlaction_infodelivery_no_adding_channels} urlaction_infodelivery_no_adding_channels = $ 00001d00 ؛ {$ externalsym urlaction_infodelivery_no_editing_channels} urlaction_infodelivery_no_editing_channels = $ 00001d01 ؛ {$ externalsym urlaction_infodelivery_no_removing_channels} urlaction_infodelivery_no_removing_channels = $ 00001d02 ؛ {$ externalsym urlaction_infodelivery_no_adding_subscriptions} urlaction_infodelivery_no_adding_subscriptions = $ 00001d03 ؛ {$ externalsym urlaction_infodelivery_no_editing_subscriptions} urlaction_infodelivery_no_editing_subscriptions = $ 00001d04 ؛ {$ externalsym urlaction_infodelivery_no_removing_subscriptions} urlaction_infodelivery_no_removing_subscriptions = $ 00001d05 ؛ {$ externalsym urlaction_infodelivery_no_channel_logging} urlaction_infodelivery_no_channel_logging = $ 00001d06 ؛ {$ externalsym urlaction_infodelivery_curr_max} urlaction_infodelivery_curr_max = $ 00001d06 ؛ {$ externalsym urlaction_infodelivery_max} urlaction_infodelivery_max = $ 00001DFF ؛ {$ externalsym urlaction_channel_softdist_min} urlaction_channel_softdist_min = $ 00001e00 ؛ {$ externalsym urlaction_channel_softdist_permissions} urlaction_channel_softdist_permissions = $ 00001e05 ؛ {$EXTERNALSYM URLPOLICY_CHANNEL_SOFTDIST_PROHIBIT} URLPOLICY_CHANNEL_SOFTDIST_PROHIBIT = $00010000; {$EXTERNALSYM URLPOLICY_CHANNEL_SOFTDIST_PRECACHE} URLPOLICY_CHANNEL_SOFTDIST_PRECACHE = $00020000; {$EXTERNALSYM URLPOLICY_CHANNEL_SOFTDIST_AUTOINSTALL} URLPOLICY_CHANNEL_SOFTDIST_AUTOINSTALL = $00030000; {$EXTERNALSYM URLACTION_CHANNEL_SOFTDIST_MAX} URLACTION_CHANNEL_SOFTDIST_MAX = $00001EFF; // For each action specified above the system maintains // a set of policies for the action. // The only policies supported currently are permissions (ie is something allowed) // and logging status. // IMPORTANT: If you are defining your own policies don't overload the meaning of the // loword of the policy. You can use the hiword to store any policy bits which are only // meaningful to your action. // For an example of how to do this look at the URLPOLICY_JAVA above // Permissions {$EXTERNALSYM URLPOLICY_ALLOW} URLPOLICY_ALLOW = $00; {$EXTERNALSYM URLPOLICY_QUERY} URLPOLICY_QUERY = $01; {$EXTERNALSYM URLPOLICY_DISALLOW} URLPOLICY_DISALLOW = $03; // Notifications are not done when user already queried. {$EXTERNALSYM URLPOLICY_NOTIFY_ON_ALLOW} URLPOLICY_NOTIFY_ON_ALLOW = $10; {$EXTERNALSYM URLPOLICY_NOTIFY_ON_DISALLOW} URLPOLICY_NOTIFY_ON_DISALLOW = $20; // Logging is done regardless of whether user was queried. {$EXTERNALSYM URLPOLICY_LOG_ON_ALLOW} URLPOLICY_LOG_ON_ALLOW = $40; {$EXTERNALSYM URLPOLICY_LOG_ON_DISALLOW} URLPOLICY_LOG_ON_DISALLOW = $80; {$EXTERNALSYM URLPOLICY_MASK_PERMISSIONS} URLPOLICY_MASK_PERMISSIONS = $0F; // The ordinal #'s that define the predefined zones internet explorer knows about. // When we support user-defined zones their zone numbers should be between // URLZONE_USER_MIN and URLZONE_USER_MAX const {$EXTERNALSYM URLZONE_PREDEFINED_MIN} URLZONE_PREDEFINED_MIN = 0; {$EXTERNALSYM URLZONE_LOCAL_MACHINE} URLZONE_LOCAL_MACHINE = 0; {$EXTERNALSYM URLZONE_INTRANET} URLZONE_INTRANET = URLZONE_LOCAL_MACHINE + 1; {$EXTERNALSYM URLZONE_TRUSTED} URLZONE_TRUSTED = URLZONE_INTRANET + 1; {$EXTERNALSYM URLZONE_INTERNET} URLZONE_INTERNET = URLZONE_TRUSTED + 1; {$EXTERNALSYM URLZONE_UNTRUSTED} URLZONE_UNTRUSTED = URLZONE_INTERNET + 1; {$EXTERNALSYM URLZONE_PREDEFINED_MAX} URLZONE_PREDEFINED_MAX = 999; {$EXTERNALSYM URLZONE_USER_MIN} URLZONE_USER_MIN = 1000; {$EXTERNALSYM URLZONE_USER_MAX} URLZONE_USER_MAX = 10000; {$EXTERNALSYM URLTEMPLATE_CUSTOM} URLTEMPLATE_CUSTOM = $00000000; {$EXTERNALSYM URLTEMPLATE_PREDEFINED_MIN} URLTEMPLATE_PREDEFINED_MIN = $00010000; {$EXTERNALSYM URLTEMPLATE_LOW} URLTEMPLATE_LOW = $00010000; {$EXTERNALSYM URLTEMPLATE_MEDIUM} URLTEMPLATE_MEDIUM = $00011000; {$EXTERNALSYM URLTEMPLATE_HIGH} URLTEMPLATE_HIGH = $00012000; {$EXTERNALSYM URLTEMPLATE_PREDEFINED_MAX} URLTEMPLATE_PREDEFINED_MAX = $00020000; {$EXTERNALSYM MAX_ZONE_PATH} MAX_ZONE_PATH = 260; {$EXTERNALSYM MAX_ZONE_DESCRIPTION} MAX_ZONE_DESCRIPTION = 200; {$EXTERNALSYM ZAFLAGS_CUSTOM_EDIT} ZAFLAGS_CUSTOM_EDIT = $00000001; {$EXTERNALSYM ZAFLAGS_ADD_SITES} ZAFLAGS_ADD_SITES = $00000002; {$EXTERNALSYM ZAFLAGS_REQUIRE_VERIFICATION} ZAFLAGS_REQUIRE_VERIFICATION = $00000004; {$EXTERNALSYM ZAFLAGS_INCLUDE_PROXY_OVERRIDE} ZAFLAGS_INCLUDE_PROXY_OVERRIDE = $00000008; {$EXTERNALSYM ZAFLAGS_INCLUDE_INTRANET_SITES} ZAFLAGS_INCLUDE_INTRANET_SITES = $00000010; {$EXTERNALSYM ZAFLAGS_NO_UI} ZAFLAGS_NO_UI = $00000020; {$EXTERNALSYM ZAFLAGS_SUPPORTS_VERIFICATION} ZAFLAGS_SUPPORTS_VERIFICATION = $00000040; {$EXTERNALSYM ZAFLAGS_UNC_AS_INTRANET} ZAFLAGS_UNC_AS_INTRANET = $00000080; يكتب PZoneAttributes = ^TZoneAttributes; {$EXTERNALSYM _ZONEATTRIBUTES} _ZONEATTRIBUTES = packed record cbSize: ULONG; szDisplayName: array[0..260 - 1] of WideChar; szDescription: array[0..200 - 1] of WideChar; szIconPath: array[0..260 - 1] of WideChar; dwTemplateMinLevel: DWORD; dwTemplateRecommended: DWORD; dwTemplateCurrentLevel: DWORD; dwFlags: DWORD; نهاية؛ TZoneAttributes = _ZONEATTRIBUTES; {$EXTERNALSYM ZONEATTRIBUTES} ZONEATTRIBUTES = _ZONEATTRIBUTES; // Gets the zone attributes (information in registry other than actual security // policies associated with the zone). Zone attributes are fixed as: // Sets the zone attributes (information in registry other than actual security // policies associated with the zone). Zone attributes as above. // Returns S_OK or ??? if failed to write the zone attributes. { Registry Flags When reading, default behavior is: If HKLM allows override and HKCU value exists Then use HKCU value Else use HKLM value When writing, default behavior is same as HKCU If HKLM allows override Then Write to HKCU Else Fail } const {$EXTERNALSYM URLZONEREG_DEFAULT} URLZONEREG_DEFAULT = 0; {$EXTERNALSYM URLZONEREG_HKLM} URLZONEREG_HKLM = URLZONEREG_DEFAULT + 1; {$EXTERNALSYM URLZONEREG_HKCU} URLZONEREG_HKCU = URLZONEREG_HKLM + 1; // Gets a named custom policy associated with a zone; // eg the Java VM settings can be defined with a unique key such as 'Java'. // Custom policy support is intended to allow extensibility from the predefined // set of policies that IE4 has built in. // // pwszKey is the string name designating the custom policy. Components are // responsible for having unique names. // ppPolicy is the callee allocated buffer for the policy byte blob; caller is // responsible for freeing this buffer eventually. // pcbPolicy is the size of the byte blob returned. // dwRegFlags determines how registry is accessed (see above). // Returns S_OK if key is found and buffer allocated; ??? if key is not found (no buffer alloced). // Sets a named custom policy associated with a zone; // eg the Java VM settings can be defined with a unique key such as 'Java'. // Custom policy support is intended to allow extensibility from the predefined // set of policies that IE4 has built in. // // pwszKey is the string name designating the custom policy. Components are // responsible for having unique names. // ppPolicy is the caller allocated buffer for the policy byte blob. // pcbPolicy is the size of the byte blob to be set. // dwRegFlags determines if HTCU or HKLM is set. // Returns S_OK or ??? if failed to write the zone custom policy. // Gets action policy associated with a zone, the builtin, fixed-length policies info. // dwAction is the action code for the action as defined above. // pPolicy is the caller allocated buffer for the policy data. // cbPolicy is the size of the caller allocated buffer. // dwRegFlags determines how registry is accessed (see above). // Returns S_OK if action is valid; ??? if action is not valid. يكتب {$EXTERNALSYM IInternetZoneManager} IInternetZoneManager = interface ['{79eac9ef-baf9-11ce-8c82-00aa004ba90b}'] // Gets the zone attributes (information in registry other than actual security // policies associated with the zone). Zone attributes are fixed as: function GetZoneAttributes(dwZone: DWORD; var ZoneAttributes: TZoneAttributes): HResult; stdcall; // Sets the zone attributes (information in registry other than actual security // policies associated with the zone). Zone attributes as above. // Returns S_OK or ??? if failed to write the zone attributes. function SetZoneAttributes(dwZone: DWORD; const ZoneAttributes: TZoneAttributes): HResult; stdcall; function GetZoneCustomPolicy(dwZone: DWORD; const guidKey: TGUID; out pPolicy: Pointer; out cbPolicy: DWORD; urlZoneReg: TUrlZoneReg): HResult; stdcall; function SetZoneCustomPolicy(dwZone: DWORD; const guidKey: TGUID; pPolicy: Pointer; cbPolicy: DWORD; urlZoneReg: TUrlZoneReg): HResult; stdcall; function GetZoneActionPolicy(dwZone, dwAction: DWORD; pPolicy: Pointer; cbPolicy: DWORD; urlZoneReg: TUrlZoneReg): HResult; stdcall; function SetZoneActionPolicy(dwZone, dwAction: DWORD; pPolicy: Pointer; cbPolicy: DWORD; urlZoneReg: TUrlZoneReg): HResult; stdcall; function PromptAction(dwAction: DWORD; hwndParent: HWnd; pwszUrl, pwszText: LPCWSTR; dwPromptFlags: DWORD): HResult; stdcall; function LogAction(dwAction: DWORD; pwszUrl, pwszText: LPCWSTR; dwLogFlags: DWORD): HResult; stdcall; function CreateZoneEnumerator(out dwEnum, dwCount: DWORD; dwFlags: DWORD): HResult; stdcall; function GetZoneAt(dwEnum, dwIndex: DWORD; out dwZone: DWORD): HResult; stdcall; function DestroyZoneEnumerator(dwEnum: DWORD): HResult; stdcall; function CopyTemplatePoliciesToZone(dwTemplate, dwZone, dwReserved: DWORD): HResult; stdcall; نهاية؛ // Creates the security manager object. The first argument is the Service provider // to allow for delegation {$EXTERNALSYM CoInternetCreateSecurityManager} function CoInternetCreateSecurityManager(SP: IServiceProvider; var SM: IInternetSecurityManager; dwReserved: DWORD): HResult; stdcall; {$EXTERNALSYM CoInternetCreateZoneManager} function CoInternetCreateZoneManager(SP: IServiceProvider; var ZM: IInternetZoneManager; dwReserved: DWORD): HResult; stdcall; {$ENDIF} function SHLockShared(Handle: THandle; DWord: DWORD): Pointer; stdcall; function SHUnlockShared(Pnt: Pointer): BOOL; stdcall; function SHFreeShared(Handle: THandle; DWord: DWORD): Pointer; stdcall; function Free(Pidl: PItemIDList): BOOL; stdcall; function HtmlHelp(hwndCaller: HWND; pszfile: PChar; uCommand: Integer; dwData: DWORD): HWND; stdcall; تطبيق const urldll = 'url.dll'; function InetIsOffline; external urldll name 'InetIsOffline'; function MIMEAssociationDialogW; external urldll name 'MIMEAssociationDialogW'; function MIMEAssociationDialogA; external urldll name 'MIMEAssociationDialogA'; {$IFDEF UNICODE} function MIMEAssociationDialog; external urldll name 'MIMEAssociationDialogW'; {$ELSE} function MIMEAssociationDialog; external urldll name 'MIMEAssociationDialogA'; {$ENDIF} function URLAssociationDialogW; external urldll name 'URLAssociationDialogW'; function URLAssociationDialogA; external urldll name 'URLAssociationDialogA'; {$IFDEF UNICODE} function URLAssociationDialog; external urldll name 'URLAssociationDialogW'; {$ELSE} function URLAssociationDialog; external urldll name 'URLAssociationDialogA'; {$ENDIF} function TranslateURLA; external urldll name 'TranslateURLA'; function TranslateURLW; external urldll name 'TranslateURLW'; {$IFDEF UNICODE} function TranslateURL; external urldll name 'TranslateURLW'; {$ELSE} function TranslateURL; external urldll name 'TranslateURLA'; {$ENDIF} {$IFDEF VER120} const UrlMonLib = 'URLMON.DLL'; function CoInternetGetSession; external UrlMonLib name 'CoInternetGetSession'; function CoInternetCreateSecurityManager; external UrlMonLib name 'CoInternetCreateSecurityManager'; function CoInternetCreateZoneManager; external UrlMonLib name 'CoInternetCreateZoneManager'; {$ENDIF} function HtmlHelp(hwndCaller: HWND; pszfile: PChar; uCommand: Integer; dwData: DWORD): HWND; stdcall; external 'hhctrl.ocx' name 'HtmlHelpA'; function SHLockShared; external 'shell32.dll' index 521; function SHUnlockShared; external 'shell32.dll' index 522; function SHFreeShared; external 'shell32.dll' index 523; function Free; external 'comctl32.dll' index 73; نهاية. |