找到另一个应用程序的数据目录

时间:2009-09-28 21:16:40

标签: c# windows-vista

给定一个应用程序“Foo”,可以安装或不安装清单(进入“程序文件”)在Windows Vista下,它还有一个应用程序安装路径“bar”的子目录:

如何从不使用文件和注册表虚拟化的另一个(C#)应用程序中找到\ foo \ bar的实际路径。

这样做有干净的方法吗?

1 个答案:

答案 0 :(得分:0)

在system.IO中,有一个名为Directory.GetDirectories的方法。

您可以使用它来迭代,检查名称foo(如果它在根目录中),然后进入吧。

如果您还需要驱动器名称,则可以使用DriveInfo.GetDrives。这些应该可以帮助您搜索它。例如:

    DriveInfo[] allDrives = DriveInfo.GetDrives();

    foreach (DriveInfo d in allDrives)
    {
        string[] dirs = Directory.GetDirectories(d.name, "foo\bar");
        foreach (string dir in dirs) 
        {
          //you have your foo bar!
        }
    }