在C#中,如何让Directory.GetDirectories(s)不返回系统目录?如何改变屏幕光标的形状 ( 积分: 10 )

  • 主题发起人 主题发起人 mycwcgr_new
  • 开始时间 开始时间
M

mycwcgr_new

Unregistered / Unconfirmed
GUEST, unregistred user!
在C#中,如何让Directory.GetDirectories(s)不返回系统目录?如何改变屏幕光标的形状

在C#中,string[] a1=Directory.GetDirectories(s)会返回所有的目录,包括系统目录如"System Volume Information"
但是在访问系统目录中,Directory.GetDirectories(s)会出错,如何让Directory.GetDirectories(s)不返回系统目录?
BTW,如何改变屏幕光标的裁判?(在Delphi中可以用screen.Cursor:= 来改变)

private void button4_Click(object sender, System.EventArgs e)
{
tree.begin
Update();
tree.Nodes.Clear();
string [] drivers=null;
drivers=Directory.GetLogicalDrives();

fill_node(tree.Nodes, drivers) ;
tree.EndUpdate();
}

private void fill_node(TreeNodeCollection myNodes,string[] drivers)
{
try
{
foreach(string s in drivers)
{
DirectoryInfo q=new DirectoryInfo(s);
TreeNode tempNode=new TreeNode(q.Name);
myNodes.Add(tempNode);
if (((s==@"A:/") || (s==@"G:/"))==false)
{
string[] a1=Directory.GetDirectories(s);
if (a1.Length>=1)
{
fill_node(tempNode.Nodes,a1);
}
}
}
}
catch
{
//不得不这样处理,因为有些系统目录一访问就出错。
}
}
 
在C#中,如何让Directory.GetDirectories(s)不返回系统目录?如何改变屏幕光标的形状

在C#中,string[] a1=Directory.GetDirectories(s)会返回所有的目录,包括系统目录如"System Volume Information"
但是在访问系统目录中,Directory.GetDirectories(s)会出错,如何让Directory.GetDirectories(s)不返回系统目录?
BTW,如何改变屏幕光标的裁判?(在Delphi中可以用screen.Cursor:= 来改变)

private void button4_Click(object sender, System.EventArgs e)
{
tree.begin
Update();
tree.Nodes.Clear();
string [] drivers=null;
drivers=Directory.GetLogicalDrives();

fill_node(tree.Nodes, drivers) ;
tree.EndUpdate();
}

private void fill_node(TreeNodeCollection myNodes,string[] drivers)
{
try
{
foreach(string s in drivers)
{
DirectoryInfo q=new DirectoryInfo(s);
TreeNode tempNode=new TreeNode(q.Name);
myNodes.Add(tempNode);
if (((s==@"A:/") || (s==@"G:/"))==false)
{
string[] a1=Directory.GetDirectories(s);
if (a1.Length>=1)
{
fill_node(tempNode.Nodes,a1);
}
}
}
}
catch
{
//不得不这样处理,因为有些系统目录一访问就出错。
}
}
 
当是根目录时候会有System Volume Information,这你自己判断一下就行了。
 
screen.cursor作用范围是自己的程序
你可以用 form1.cursor form2.cursor代替啊.
或者你调用windows api SetCursor(hCursor)
 
后退
顶部