【发布时间】:2012-09-05 21:46:51
【问题描述】:
我制作了一个应该显示文件系统树的程序。我将它设置为显示来自 C: 的文件系统。当我编译程序时说C: 的访问被拒绝。告诉我你需要什么,以防你帮助我,我会为你提供所需的信息。谢谢!
附:当我将程序设置为在C:\Windows\ 中列出文件系统时,它起作用了。
这是我使用的代码:
private void ListDirectory(TreeView treeView, string path)
{
treeView.Nodes.Clear();
var rootDirectoryInfo = new DirectoryInfo(path);
treeView.Nodes.Add(CreateDirectoryNode(rootDirectoryInfo));
}
private static TreeNodeCreateDirectoryNode(DirectoryInfo directoryInfo)
{
var directoryNode = new TreeNode(directoryInfo.Name);
foreach (var directory in directoryInfo.GetDirectories())
directoryNode.Nodes.Add(CreateDirectoryNode(directory));
foreach (var file in directoryInfo.GetFiles())
directoryNode.Nodes.Add(new TreeNode(file.Name));
return directoryNode;
}
在程序中,调用我使用的方法:
mainWindow(){
InitialiseComponent();
ListDirectory(treeView1, @"C:\");
}
【问题讨论】:
-
你能贴出你代码的相关部分吗?
-
是否以管理员权限运行(右键输出 exe,以管理员身份运行)工作?
-
不知道为什么你锁得这么快。也许下次给他时间添加/改进他的问题。
-
@Guys,如果您需要管理员权限来读取驱动器的根目录,那么您在访问文件系统的其余部分时会遇到严重问题。只是说。
-
Markdown 欺骗了我。您使用的是
C:还是C:\?
标签: c#