我正在努力寻找以下问题的答案。任何和所有的帮助将不胜感激。
我正在使用以下代码尝试在 Outlook 打开时复制 Outlook.pst 文件。我无法让它成功。
它不会给出错误,只是不复制文件。
copyfile('C:\Users\Administrator\Documents\Outlook Files\Outlook.pst','F:\Outlook.pst');
如果你们知道我如何复制这样的锁定文件,请帮忙。
我尝试过,发现 TFilestream 也不起作用。
这两个是我所知道的唯一选择。任何帮助将不胜感激。
谢谢
我也尝试了以下代码,并收到错误消息,指出该文件正在从另一个进程(outlook)使用。
procedure TForm1.Button2Click(Sender: TObject);
var
NewFileName: string;
NewFile: TFileStream;
OldFile: TFileStream;
Begin
NewFileName:='F:\outlook.pst';
OldFile := TFileStream.Create('C:\Users\Administrator\Documents\Outlook Files\outlook.pst', fmOpenRead or fmShareDenyWrite);
try
NewFile := TFileStream.Create(NewFileName, fmCreate or fmShareDenyNone);
try
NewFile.CopyFrom(OldFile, OldFile.Size);
finally
FreeAndNil(NewFile);
end;
finally
FreeAndNil(OldFile);
end;
end;
请参阅以下链接。如果有人可以转换代码。问题应该得到解决。如何使用 C# 在打开的 pst 文件时复制它
PST 提供程序会锁定 PST 文件,直到父进程终止。即使您从 Outlook 中关闭 PST 文件,出于性能原因,它也会保持打开状态 30 分钟。
您是否以编程方式在 Outlook 中打开 PST 文件?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)