【发布时间】:2011-04-20 14:53:52
【问题描述】:
我的程序需要访问某个 UNC 路径,但该路径是跨域的,因此根据运行程序的机器,它可能有也可能没有默认凭据。通常,用户只需打开资源管理器并输入 UNC 或 IP 地址即可获得登录提示(此时他们可以为共享所在的域输入适当的凭据)。
是否有一种“干净”的方式来测试 UNC 的可访问性,如果默认的 Windows 凭据不好,那么会提示他们使用不同的凭据?
现在我正在使用一些讨厌的代码来尝试读取共享上的文本文件,捕获 IOException,然后打开一个“explorer.exe”进程对象(隐藏)以获取登录提示。这都包含在一个循环中,该循环在 10 秒后再次检查。它有点工作,但解决方案和逻辑似乎真的不可取。
我唯一的选择真的是WNetUseConnection 还是互操作式解决方案?
【问题讨论】:
标签: c# .net networking