在 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
}
最佳答案
如果错误显示“找不到目录”,则该目录不存在。已知文件夹的位置由系统存储在注册表中,因此它不一定只因为存在注册表项而存在。相反,注册表项会指定文件夹的放置位置(如果需要)。
可能发生的情况是该文件夹是由 shell (Explorer.exe)“按需”创建的,这就是您可以浏览到它的原因。
只需先调用 System.IO.Directory.CreateDirectory
。如果目录不存在,这将创建该目录,如果存在,则打开它。
关于c# - 无法以编程方式查找 Win10 启动文件夹 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43003326/