2012-06-05 105 views
5

有可能吗?我需要获得Adobe Reader的完整路径,包括可执行文件的名称。我正在寻找Windows注册表,我所做的更接近没有可执行文件名称的完整路径。提前致谢。如何获取Adobe Reader完整路径(包括可执行文件名称)?

我的代码:

var adobe = Registry.LocalMachine.OpenSubKey("Software").OpenSubKey("Adobe").OpenSubKey("Acrobat Reader"); 
var version = adobe.GetSubKeyNames().First(); 
var path = adobe.OpenSubKey(version).OpenSubKey("installer").GetValue("path"); 

在此先感谢。

回答

13

其中一个应该为你做它:

var adobe = Registry.LocalMachine.OpenSubKey("Software").OpenSubKey("Microsoft").OpenSubKey("Windows").OpenSubKey("CurrentVersion").OpenSubKey("App Paths").OpenSubKey("AcroRd32.exe"); 
    var path = adobe.GetValue(""); 

    var adobeOtherWay = Registry.LocalMachine.OpenSubKey("Software").OpenSubKey("Classes").OpenSubKey("acrobat").OpenSubKey("shell").OpenSubKey("open").OpenSubKey("command"); 
    var pathOtherWay = adobeOtherWay.GetValue(""); 

选择一个,并运行它;)

+0

谢谢!你拯救了我的夜晚:) – Jack

+1

没问题,只需将我的答案标记为正确,我就可以入睡了! :) – Faraday

+0

等等...... AcroRd32.exe是Adobe Reader独立版本,体系结构等的默认名称吗? – Jack

4

我发现了一个问题与“adobeOtherWay”的解决方案。如果安装了Adobe Acrobat(不是阅读器),那么路径将指向Acrobat.exe,而不是读者的exe(我想评论以上,但没有足够的声望)

2

我正在使用: HKEY_CLASSES_ROOT \ Software \ Adob​​e \ Acrobat \ Exe 它为我提供了安装的Acrobat Reader的完整路径和exe名称,正是您所需要的。

相关问题