gpt4 book ai didi

c# - UnauthorizedAccessException 与 IOException

转载 作者:太空狗 更新时间:2023-10-30 01:21:26 26 4
gpt4 key购买 nike

我正在列出 Nas 共享中的一些文件夹,获取文件夹属性并列出子文件夹。对于我没有访问权限的文件夹,我得到两个不同的异常(exception)

  1. System.UnauthorizedAccessException:对路径“Z:\info”的访问被拒绝。
  2. System.IO.IOException: 找不到网络路径。

第二个需要很长时间才能被捕获,这会减慢应用程序

我的问题是,为什么对于某些共享,我得到网络路径未找到而其他共享访问被拒绝?有什么不同?以及如何避免需要时间的第二个异常。

最佳答案

My question is why for some shares i get the network path was not found and others the access denied? what is the different?

如果快速找到路径,但您没有权限,您将很快收到 UnauthorizedAccessException

但是,如果系统试图发现网络共享是否有效,这可能需要一段时间。在确定网络路径根本无效之前,它需要进行相当多的网络访问,这可能需要一些时间。

and how can i avoid the second exception which takes time.

做到这一点的唯一真正方法是不访问不存在的共享。这并不总是实用 - 如果您需要在运行时确定它们是否存在,您只需要围绕这可能很慢的事实进行设计。

有很多方法可以改进这一点,但是 - 如果您要检查多个共享,您可以并行进行这些检查。考虑到这实际上是 IO 限制,线程可能会对应用程序的整体响应能力产生巨大影响,因为您可以同时检查所有共享,而不是按顺序检查。

关于c# - UnauthorizedAccessException 与 IOException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15705880/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com