无法以编程方式查找Win10启动文件夹C#

时间:2017-03-24 15:23:23

标签: c#

在运行此简单代码的Windows 10中,会抛出一个未找到目录的异常。我可以手动导航到目录。是什么给了什么?

shortcut_location_root = Environment.GetFolderPath(Environment.SpecialFolder.Startup);

if (String.IsNullOrEmpty(shortcut_location_root))
{   
  //FALLS IN HERE
    shortcut_location_root =
      Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\Microsoft\Windows\Start Menu\Programs\Startup";

//BLOWS UP HERE DIRECTORY NOT FOUND
 if (File.Exists(Path.Combine(shortcut_location_root, "someFile" + ".url")))
 {
     //do stuff
 }

1 个答案:

答案 0 :(得分:0)

如果错误显示"找不到目录"那么目录就不存在了。已知文件夹的位置由系统存储在注册表中,因此仅仅因为存在注册表项而不一定存在。而是注册表项指定在需要时应放置文件夹的位置。

正在发生的事情是shell正在创建文件夹(Explorer.exe)"按需提供"这就是你可以浏览它的原因。

首先致电System.IO.Directory.CreateDirectory。如果该目录不存在,则会创建该目录,如果存在,则将其打开。