我有一个应用程序,可以将本地硬盘驱动器上任何位置的文件复制到网络共享上的目录。网络目录只能由特殊域帐户访问。我通常通过使用模仿者级 https://stackoverflow.com/questions/9909784/impersonating-a-windows-user这样:
using(new MyImpersonator()
{
File.Copy(source, destination);
}
但是,当我想从特殊目录(例如 Windwos-Dektop)复制文件时,这会导致问题。然后我收到 UnauthorizedAccessException,因为有权在网络共享上写入的域帐户无权从本地桌面读取。由于我的客户的限制,在安装过程中授予特殊域帐户读取本地计算机上每个文件夹的权限不是一个选项。
我的解决方法是在 C:\ProgramData\MyApp 中创建一个可由本地用户和网络用户访问的临时目录,并首先将文件复制到此临时目录,然后使用特殊域帐户复制到网络分享。但这不是很高效。
有人对这个问题有更聪明的解决方案吗?
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)