在實(shí)際應(yīng)用過(guò)程中,常常會(huì)碰到需要得到某個(gè)應(yīng)用程序的路徑的問(wèn)題。
拿最近我給S+core IDE寫的幾個(gè)工具來(lái)說(shuō),就必須首先知道S+core IDE的安裝路徑,才可以獲取到一些跟IDE的設(shè)置相關(guān)的信息。
如何得到某個(gè)應(yīng)用程序的路徑?一個(gè)朋友給出了這樣的思路:
首先通過(guò)注冊(cè)表獲取開始菜單的路徑,然后在安裝程序里遍歷快捷方式,找到想要的那個(gè)應(yīng)用程序。但是這種方法比較麻煩,而且效率太低。
研究了一下注冊(cè)表,發(fā)現(xiàn)了這樣一個(gè)比較有意思的地方:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\
(點(diǎn)擊查看大圖)
看起來(lái),好像所有安裝過(guò)的應(yīng)用程序都會(huì)在這里注冊(cè)。于是,想到利用這個(gè)位置來(lái)查找自己想要的東西。
以S+core IDE這個(gè)程序的查找為例,
在上面的分支里會(huì)有一個(gè)名為“S+core IDE.exe”的分支,這個(gè)分支的名字是跟S+core IDE這個(gè)應(yīng)用程序的可執(zhí)行文件同名的。
在這個(gè)分支下,Path的值即為應(yīng)用程序所在的路徑,而分支的默認(rèn)值則代表了應(yīng)用程序的可執(zhí)行文件的完整路徑。
基于此,可以方便的獲取到S+core IDE的安裝路徑:
(點(diǎn)擊查看大圖)
這種方法在WinXP系統(tǒng)上驗(yàn)證通過(guò),但是不知道對(duì)于其他的應(yīng)用程序是否也適用,另外,在其他windows系統(tǒng)上不知道是否通用