現在、すべてのフォルダーとサブフォルダーを取得して、作成中の小さなツールのACLをチェックする関数がありますが、到達できる深さを制限する方法を見つけようとして、髪の毛を抜いています。たとえば、4レベルの深さのフォルダがありますが、ACL用に3レベルしか取得できないようにしたいです。
現在、私はそれをこのようにコーディングしています:
private void StepThroughDirectories(string dir)
{
string[] directories = Directory.GetDirectories(dir);
try
{
foreach (string d in Directory.GetDirectories(dir))
{
if (recCount < (int)Depth)
{
GetACLs(d, new DirectoryInfo(d));
pBar.Value += 1;
//MessageBox.Show("Recursive Level: " + counter.ToString());
recCount++;
StepThroughDirectories(d);
}
else
{
recCount--;
}
}
}
catch (System.Exception e)
{
Console.WriteLine(e.Message);
}
}
明らかに、私はしばらくの間問題に取り組んできたので、それは以前ほど良くありませんでしたが、誰かがこの問題を解決するために正しい方向に私を向けることができれば、私はとても幸せです!