我正在做项目,主要目标是使outlook的日历和应用程序的日历同步。在我们的应用程序中,我们使用自定义编程语言,并通过dispatchId映射outlook函数。
我的问题来了。我在Outlook日历中使用StorageItem保存一些内部数据,但是当我尝试调用GetStorage方法时,它有时会以异常结束。
异常消息是“不正确的函数”(其翻译自捷克文"Nesprávnáfunkce")。
我在不同的文件夹中调用GetStorage (日历),在不同的数据存储区(.pst)调用。当我尝试从vsto调用GetStorage方法时,它每次都能工作。但通过COM在我们的应用程序中调用它,这真是太痛苦了。
我不能诱导出确切的行为,它看起来是随机发生的。
语法:
oFolder := oNS.GetFolderFromID(OFolderID,''); // ok, folder found
if oFolder <> nil then begin
oStorageItem := oFolder.GetStorage('Synchronization.Info', 0); // exception
if oStorageItem.Size > 0 then
Result := False;
end;示例情况:
第一个数据存储:
"firstCal"
第二个数据存储:
调用getStorage:
Exception
。。和其他随机组合
发布于 2012-08-10 10:54:54
多亏了这个线程http://www.delphigroups.info/2/11/941254.html,我终于找到了一个解决方案。
Delphi引发一个错误--它不是S_OK (0),但是VB(Visual )检查它是否是is>0 (成功宏/函数就是这样做的)。
我们的自定义语言是基于Delphi的。GetStorage函数调用结果为1,如果调用正常,则期望S_OK (0)。
https://stackoverflow.com/questions/10781173
复制相似问题