我正在使用 SWT(标准小部件工具包)提供的 OleAutomation Java API 来操作 Visio 文档。我们使用 OleAutomation 调用在自动化 API 上生成了 Java 包装器。例如:(形状删除)
/**
* COM Id: 11
*/
public void Delete() {
//Invoke
Variant varInputArray[] = new Variant[0];
Variant varResult = oleAutomation.invoke(11, varInputArray);
for (Variant _varItr : varInputArray) {
_varItr.dispose();
}
if(varResult !=null)
{
varResult.dispose();
}
}
从应用程序逻辑中的某个位置调用此删除时,我遇到了一个特殊的问题。在一个页面上,我放置一个形状并调用删除。对于奇数调用,删除成功并且 varResult 返回 VT_EMPTY(1st,3rd,5th.... time call)。对于偶数调用(我将形状再次放在页面上并调用 -2nd、4th 6th 等),varResult 返回“null”,表示失败。现在我需要了解偶数呼叫出了什么问题。Visio 自动化框架中是否有某种日志记录工具可以记录失败的原因?