ie缓存目录在哪(ie的临时文件夹缓存的文件)

基于某些原因,有些开发者希望能获取到IE浏览器(Internet Explorer)的全路径,这样就可以在二进制执行文件上加上一些选项了。

其实,并不需要这样。只需要向ShellExecute函数传递”IEXPLORE.EXE”这个参数,它就会有方法找到IE的执行文件并想办法执行它,如下图所示:

ie缓存目录在哪(ie的临时文件夹缓存的文件)(1)

这个ShellExecute函数会负责为我们干”脏活”。另外,如果你只需要打开某个URL地址,可以像下图这样调用:

ie缓存目录在哪(ie的临时文件夹缓存的文件)(2)

上述调用会使用用户预定义的WEB浏览器来打开这个URL地址。一般情况下应避免强制使用IE浏览器,我们在此处强制执行该操作,因为该操作可能是为了能够专门在IE浏览器中打开某些页面。

如果你还是希望自行查找路径,也是可以的。这就需要涉及一些更加高级的技术,也即:如何在系统中注册你的应用程序和路径。

在MSDN中有文档描述了一个应用程序在注册表中注册自身的信息的步骤。为了保持兼容性,你需要从注册表中读取某些内容并将它们解析成一些列的属性。

在这种情况下,系统打开IE浏览器和使用API ShellExecute是等效的,它们都会到注册表里的HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionApp PathsIEXPLORE.EXE中查询路径信息。这个注册表项的默认值为应用程序的全路径,在启动IE时,这个路径会被结合到系统环境变量中并定位IE浏览器的执行文件。

如果你真的决定这样做,要注意一点:如果注册表的值类型是REG_EXPAND_SZ,则需要调用这个函数:ExpandEnvironmentStrings。有很多开发者都会忽视这一点。

总结

我的观点还是:别瞎折腾,直接使用ShellExecute就好。简单,方便,快捷。毕竟,人生苦短。

最后

Raymond Chen的《The Old New Thing》是我非常喜欢的博客之一,里面有很多关于Windows的小知识,对于广大Windows平台开发者来说,确实十分有帮助。本文来自:《How to find the Internet Explorer binary》

最近我写了个东西

正如你们所知道的,拓扑梅尔智慧办公平台(Topomel Box)是一款绿色软件,主要面向经常使用电脑的朋友。它提供了各种提升办公效率的小功能,同时操作上尽可能地简单方便。

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页