求从注册表获取软件安装路径

hzy694358 2010-05-28 09:36:25
举个例子,我是在下面的这个注册表路径获得的IE路径,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\IEXPLORE.EXE
这个项有两个值:
(默认) REG_SZ C:\Program Files\Mozilla Firefox\firefox.exe
Path REG_SZ C:\Program Files\Mozilla Firefox

于是我就获取C:\Program Files\Mozilla Firefox\firefox.exe这个做为IE程序的路径

在有的机子上是正确的,可是有的机子,这个却不是IE的而是其他的一些程序:
C:\Program Files\360se\360se.exe (有的确实显示的360的路径,真是奇怪)
这个是怎么回事,
我到底如何才能得到程序的最新的正确的安装路径呢?
(也看了其他的一些注册表项键,但都没法得到正确的实时的值)

注册表哪个地方能得到正确的 软件安装路径
...全文
2183 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
imdemon 2011-06-24
  • 打赏
  • 举报
回复
getwindowsdir
得到系统盘符
X:\Program Files\Internet Explorer\iexplore.exe

这个就是系统IE的路径了.
ddzhouqian 2010-10-09
  • 打赏
  • 举报
回复
现在也遇到类似的问题,就是获取iexplore.exe的路径,一开始以为winexec会自动查找系统路径下的可执行文件,不过貌似C:\Program Files\Internet Explorer\不是系统路径,所以找不到,难道要写死路径,或者用进程查找方式来获取,感觉那样太麻烦了
hzy694358 2010-05-28
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 fishion 的回复:]
晕,,被你误导了,如果你要获得系统自带IE的安装路径的话,那直接可以固定查找了C:\Program Files\Internet Explorer\,不过你可以先查找系统的安装目录Program Files用SHGetSpecialFolderPath
[/Quote]
那如果IE是自己手动安装的呢,
还有如果IE已经删除了,而这个目录还保留着的话,这样不是也会判断出错吗?
fishion 2010-05-28
  • 打赏
  • 举报
回复
晕,,被你误导了,如果你要获得系统自带IE的安装路径的话,那直接可以固定查找了C:\Program Files\Internet Explorer\,不过你可以先查找系统的安装目录Program Files用SHGetSpecialFolderPath
hzy694358 2010-05-28
  • 打赏
  • 举报
回复
在有的机子上是正确的,可是有的机子,这个却不是IE的而是其他的一些程序:
C:\Program Files\360se\360se.exe (有的确实显示的360的路径,真是奇怪)
--------------------------------------------------------------------
暂时发现这个产生的原因是:
360se被删除了,这个键值就成了360se的原先的安装路径了,
还有其他的一个浏览器删除了,也改成了被删除的浏览器的原先的安装路径

不知到为什么会这样,谁能解释下的……

想获得IE安装路径啊……
hzy694358 2010-05-28
  • 打赏
  • 举报
回复
不好意思弄错了上面的,
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\IEXPLORE.EXE
应该是这样的:(不小心选到了FireFox去了)
(默认) REG_SZ C:\Program Files\Internet Explorer\iexplore.exe
Path REG_SZ C:\Program Files\Internet Explorer
---------------------------------------------
还有我的默认浏览器设置的是chrome的,可是,这个注册表项里的依然是
(默认) REG_SZ C:\Program Files\Internet Explorer\iexplore.exe
并没有如你所说的改变成chrome的啊,
还有如果真的如你所说的,这个是默认浏览器的路径,那我想获得IE的安装路径,怎么获取呢?
fishion 2010-05-28
  • 打赏
  • 举报
回复
你应该找HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\firefox.exe
fishion 2010-05-28
  • 打赏
  • 举报
回复
你打开的是IEXPLORE.EXE来查看程序的路径而已,而这里得到的是默认浏览器的路径,当然是不固定的,你能设置火狐为默认浏览器,也能设置360为默认浏览器,所以你不能从IEXPLORE.EXE里找程序的安装路径
shenyi0106 2010-05-28
  • 打赏
  • 举报
回复
每个软件都不一样,有的可能由,有的可能没有,
不过windows应该对所有的安装软件都有个记录,但是这个不知道在哪?
等待高手......

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧