问题
it's possible? I need to get the full path of Adobe Reader including the executable name. I'm looking for on windows registries, the closer that I did was found the full path without executable name. Thanks in advance.
my code:
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");
Thanks in advance.
回答1:
One of these should do it for you:
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("");
Pick one and run with it ;)
回答2:
I found a problem with the "adobeOtherWay" solution. If Adobe Acrobat(not reader) is installed, then the path will point to Acrobat.exe and not the reader's exe.(I wanted to comment to above, but don't have enough reputation)
回答3:
I'm using : HKEY_CLASSES_ROOT\Software\Adobe\Acrobat\Exe It gives me the full path and exe- name of the installed Acrobat Reader, just what you need.
来源:https://stackoverflow.com/questions/10891939/how-to-get-adobe-reader-full-pathincluding-executable-file-name