我正在尝试调试一些 C# 代码,非常感谢您的帮助。
这是我的代码。
sourceZipFile = objShell.NameSpace(@incomingZipFilesFolder.FullName + this.zipFile.Title);
try
{
//extract and copy all files
foreach (FolderItem2 file in sourceZipFile.Items())
{
log.createEntry("Extracting:"+file.Name);
destinationFolder.CopyHere(file, 4 | 16 );
}
}catch(Exception ex){
}
我正在使用 Shell32 将 zip 文件解压缩到目标文件夹中。
在我的服务器上使用 Visual Studio 运行此代码时,一切正常,提取的文件到达目标文件夹。
在同一台服务器上将此代码作为服务运行时,日志文件成功显示:
提取:File1.txt 提取:File2.txt 提取:File3.txt
但是,文件不会到达目标文件夹。它表明循环工作正常,但destination.CopyHere 没有。
我正在使用服务帐户来运行此代码。该帐户对源文件夹和目标文件夹具有完全的 AD 权限。该代码不会引发任何错误。
有没有办法让 destinationFolder.Copy 在这里返回错误输出?
就像测试一样,我使用自己的 Windows 用户安装了该服务,因此该过程使用我的用户帐户运行,并且在服务器上具有管理员权限。结果与使用服务帐户运行它相同。
我会很感激任何指示。
谢谢
问候
托比