gpt4 book ai didi

c# - 从网络驱动器连接/复制

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

不太确定如何处理这个问题。我已经研究了一下,但我做空了。尝试连接到工作中的网络驱动器并复制最新的文件夹(对项目的更新)对我来说,目录以\开头但是当我将它添加到字符串变量时它不会连接并且不会显示当我尝试检查它。这个有流程吗?

这就是我的。它一定是在某种程度上是错误的。

string updir = @"\\NetworkDrive\updates\xxxxx";

public void CopyAll(DirectoryInfo source, DirectoryInfo target)
{

try
{
//check if the target directory exists
if (Directory.Exists(target.FullName) == false)
{
Directory.CreateDirectory(target.FullName);
}

//copy all the files into the new directory

foreach (FileInfo fi in source.GetFiles())
{
fi.CopyTo(Path.Combine(target.ToString(), fi.Name), true);
}


//copy all the sub directories using recursion

foreach (DirectoryInfo diSourceDir in source.GetDirectories())
{
DirectoryInfo nextTargetDir = target.CreateSubdirectory(diSourceDir.Name);
CopyAll(diSourceDir, nextTargetDir);
}
//success here
copyall = true;
}

catch (IOException ie)
{
//handle it here
copyall = false;
}
}

我一直在用它来复印。它运作良好。

DateTime lastHigh = new DateTime(1900, 1, 1);
string highDir;
foreach (string subdir in Directory.GetDirectories(updir))
{
DirectoryInfo fi1 = new DirectoryInfo(subdir);
DateTime created = fi1.LastWriteTime;

if (created > lastHigh)
{
highDir = subdir;
lastHigh = created;
}
}

然后找到最新的文件夹。

最佳答案

你可以尝试这样的事情(指定网络共享的访问权限):

string updir = @"\\NetworkDrive\updates\somefile";

AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal);
WindowsIdentity identity = new WindowsIdentity(username, password);
WindowsImpersonationContext context = identity.Impersonate();

File.Copy(updir, @"C:\somefile", true);

关于c# - 从网络驱动器连接/复制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9981802/

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