我使用的是Delphi 2007.我没有实现'没有实现'将文档加载到Ole容器后尝试调用IPersistFile.Save()
时出现异常。
Acrobat Reader 10及更高版本存在问题。相同的代码适用于Acrobat Reader 9.
我试图在Adobe论坛上找到一些解决方案,但没有成功。也许以前有人有同样的问题。
我使用的代码如下:
procedure LoadAndSave();
var PF: IPersistFile;
saveResult : integer;
OleContainerDocument: TOleContainer;
CreateInfo: TCreateInfo;
begin
CreateInfo := ...
OleContainerDocument.CreateObjectFromInfo(CreateInfo);
OleContainerDocument.OleObjectInterface.QueryInterface(IPersistFile, PF);
if PF <> nil then begin
saveResult := PF.Save(StringToOleStr(FullFilePath), false);
//In this place saveResult contains E_NOTIMPL error
end
end;