1

我有一个简单的更新程序,可以将文件从公司服务器复制到用户的机器上。

对于内部 LAN 上的大多数人来说,这没有问题,但是一些员工从 LAN 访问它,他们不会自动通过相关服务器进行身份验证。

通常尝试访问该服务器(例如通过资源管理器)只会抛出一个用户凭据对话框,要求用户提供可以访问共享目录的登录名。

在我的 Winforms 应用程序中,我只是使用诸如File.Copy移动文件之类的操作。

我的应用程序如何使 Windows 提示进行身份验证,而不仅仅是抛出异常?

我愿意自己做一些工作,但我真正希望的是 Windows 提供了一种实现这一点的方法。

否则,我正在考虑尝试访问并显示一条错误消息,指示用户使用资源管理器进行身份验证。

有没有其他很好的方法来处理这个问题而无需为 50 行程序重新发明轮子?:-)

4

1 回答 1

0

您可以使用 shell API 来实现这一点(Windows Explorer 基于相同的 API) - 相反File.Copy,您可以 pinvoke SHFileOperation

于 2012-05-28T00:43:07.923 回答