Убедитесь, что каталоги и файлы разрешено переименовывать - PullRequest
0 голосов
/ 11 июня 2018

Для моего приложения я разрешаю пользователям переименовывать проект, это будет означать, что мне нужно переименовать каталог и файлы на диске.Проблема в том, что если каталог открывается пользователем.Я получу сообщение об ошибке " Доступ к пути '...' запрещен. ", но на данный момент я уже переименовал пару файлов.

У меня вопрос, если естьспособ проверить, можно ли переименовать каталог или файлы без каких-либо проблем, прежде чем я начну вносить изменения.

Вот фрагмент моего кода, который у меня есть:

Try

    Dim directory As New IO.DirectoryInfo(WorkingDirectory)

    ' Verify if the old directory path exists on the disk, if so rename it using the new directory name.

    If IO.Directory.Exists(oldDirectoryPath) Then

        ' Delete old project file
        If IO.File.Exists(oldFilePath) Then
            IO.File.Delete(oldFilePath)
        End If

        ' Rename all files in subdirec with new name
        If IO.Directory.Exists(oldSubDirectory) Then
            For Each file As String In IO.Directory.GetFiles(oldSubDirectory,
                                                         $"*_{oldName}.*",
                                                         IO.SearchOption.AllDirectories)   
                FileIO.FileSystem.RenameFile(file, newFileName)   
            Next
        End If

       FileIO.FileSystem.RenameDirectory(oldDirectoryPath, directory.Name)

    End If
Catch ex As IO.IOException
' Show error message to user
End Try

1 Ответ

0 голосов
/ 29 июня 2018

Извините, я не могу оставить комментарий.Но я думаю, что это очень интересный вопрос.Но мне было интересно, как насчет сначала переименования каталога, а затем файлов.если какой-либо файл в этом каталоге открыт, вы не можете переименовать каталог, следовательно, вы не переименовали ни один файл.Просто мысль!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...