【发布时间】:2014-09-25 00:53:55
【问题描述】:
我有一个文件夹"I:\mydir",它是read only。执行以下代码后:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim subPath = "I:\mydir"
Try
Directory.CreateDirectory(subPath)
Directory.Delete(subPath)
Dim directoryExists = Directory.Exists("I:\mydir")
Dim subDirectoryExists = Directory.Exists(subPath)
Console.WriteLine("top-level directory exists: " & directoryExists)
Console.WriteLine("sub-directory exists: " & subDirectoryExists)
Catch ex As Exception
Console.WriteLine("The process failed: {0}", ex.Message)
End Try
End Sub
目录被删除而不询问任何确认消息(“您确定要将此文件夹移动到回收站吗?”)。
然后我拒绝了该文件夹的所有访问权限并再次执行相同的代码。但这一次并没有被删除。并抛出异常为"access is denied"。
那么,为什么在删除普通目录和只读目录之前没有显示任何确认消息?
【问题讨论】:
-
你必须编写请求权限的代码。
-
@ the_lotus :我不是在说 vb_alert 进行确认:我的问题是为什么 windows(OS) 没有显示确认消息
-
这是通过向您抛出异常。然后你必须自己提示用户并询问他们。或者在尝试删除之前进行检查。
-
@ the+lotus :我的问题是为什么操作系统不显示确认消息(不是如何显示确认消息)用于删除硬盘中的文件夹。一般情况下,文件夹或文件只有在确认后才会被删除。
-
操作系统不显示消息,这是您的工作。当您使用 Windows 资源管理器时,显示消息的是应用程序,而不是操作系统。