Vb.net 看起来像一个异常系统。UnauthorizedAccessException被忽略
我有一个异常问题:我使用的代码是:Vb.net 看起来像一个异常系统。UnauthorizedAccessException被忽略,vb.net,exception-handling,Vb.net,Exception Handling,我有一个异常问题:我使用的代码是: Public Class Form1 Private Sub KiesPad_Click(sender As Object, e As EventArgs) Handles KiesPad.Click Dim dlg As New FolderBrowserDialog Dim result As DialogResult = dlg.ShowDialog() If result = DialogResult.OK Then
Public Class Form1
Private Sub KiesPad_Click(sender As Object, e As EventArgs) Handles KiesPad.Click
Dim dlg As New FolderBrowserDialog
Dim result As DialogResult = dlg.ShowDialog()
If result = DialogResult.OK Then
For Each f As String In IO.Directory.EnumerateFileSystemEntries(dlg.SelectedPath, "*.*", IO.SearchOption.AllDirectories)
Try
Microsoft.VisualBasic.FileIO.FileSystem.RenameFile(f, FixName(f))
Me.RichTextBox1.Text = Me.RichTextBox1.Text & "Aangepast " & f & " in " & FixName(f) & vbCrLf
Catch ex As System.UnauthorizedAccessException
MsgBox("Security problem")
Catch ex As IO.IOException
'Bestandsnaam niet aangepast. Bestaat al, niks doen.
Catch ex As Exception
MsgBox(ex.Message & ex.HResult)
End Try
Next
End If
End Sub
运行此代码时,我收到一条错误消息:
An unhandled exception of type 'System.UnauthorizedAccessException' occurred in mscorlib.dll
Additional information: no access fot c:\users\jack\documents\pictures`
但我为系统执行了捕获异常。UnauthorizedAccessException
我的错误是什么?调用
IO.Directory.EnumerateFileSystems时,您没有捕获异常。将试块移到更高的位置:
Try
For Each f As String In IO.Directory.EnumerateFileSystemEntries(dlg.SelectedPath, "*.*", IO.SearchOption.AllDirectories)
Microsoft.VisualBasic.FileIO.FileSystem.RenameFile(f, FixName(f))
Me.RichTextBox1.Text = Me.RichTextBox1.Text & "Aangepast " & f & " in " & FixName(f) & vbCrLf
Next
Catch ex As System.UnauthorizedAccessException
MsgBox("Security problem")
Catch ex As IO.IOException
'Bestandsnaam niet aangepast. Bestaat al, niks doen.
Catch ex As Exception
MsgBox(ex.Message & ex.HResult)
End Try