0
내 로컬 PC의 모든 txt 파일을 특정 위치로 복사 할 수있는 프로그램을 작성하고 싶습니다. 지금까지 아무런 문제가 없지만 디렉토리를 열 수있는 권한이 있습니다. 일부 디렉토리는 UnauthorizedException을 발생시킵니다. 먼저 액세스하여 파일을 읽을 수 있습니까? 이것은 iam이 지금까지 해왔 던 것입니다 :디렉토리에 대한 액세스 얻기
public List<FileInfo> SearchFiles(List<string> pattern)
{
List<FileInfo> files = new List<FileInfo>();
foreach (DriveInfo drive in DriveInfo.GetDrives())
{
var dirs = from dir in drive.RootDirectory.EnumerateDirectories()
select new
{
ProgDir = dir,
};
foreach (var di in dirs)
{
try
{
foreach (string muster in pattern)
{
foreach (var fi in di.ProgDir.EnumerateFiles(muster, SearchOption.AllDirectories))
{
try
{
files.Add(fi);
}
catch (UnauthorizedAccessException)
{
}
}
}
}
catch (UnauthorizedAccessException)
{
}
}
}
return files;
}
문자열이있는 목록은 메서드가 검색하는 패턴을 제공합니다. 예를 들어 모든 txt 파일과 이름이 뭐니 뭐니?
좋은 생각하지만 그것은 작동하지 않는 것 같습니다. 예를 들어 "Documents & Settings"디렉토리에 액세스하려면 UnauthorizedAccess Exception이 표시됩니다. – Sebi