从C#VS2013,我想获得在win 7上安装的应用程序的完整路径。
该帖子有7种方法在:
http://stackoverflow.com/questions/6041332/best-way-to-get-application-folder-path
无法帮助我,因为我不需要当前运行的应用程序的路径
我需要已安装的应用程序的路径(但当前未运行)。
我试过
string [] allfiles = Directory.GetFiles(path, "*", SearchOption.AllDirectories)
在
http://stackoverflow.com/questions/23736343/recursive-search-for-files-in-root-directory-and-subfolders
但是得到了:
Additional information: Access to the path 'C:Program FilesMSSomeAppDATA' is denied.
我的C#代码:
FileInfo executableFileInfo = new FileInfo("MyApplication.exe"); // It has been installed on win 7.
string executableDirectoryName = executableFileInfo.DirectoryName;
这刚刚返回了我当前的VS2013工作目录。但是,实际上,"MyApplication.exe"是在C:\MyPath上安装的。
我需要获得完整的文件路径C:\MyPath\,所有的libs和exe文件(MyApplication)都在那里。
有什么建议吗?感谢
好吧,你可以使用类似的东西:
string[] paths =
System.IO.Directory.GetFiles(System.Environment.SpecialFolder.ProgramFiles,
"MyApplication.exe", System.IO.SearchOption.AllDirectories);
这将在程序文件文件夹及其所有子文件夹中查找名为MyApplication.exe的文件,并返回所有匹配的完整路径