1

情况:我成功地使用 com4j 和 java 连接到我的 QC

爪哇代码:

ITDConnection itdc= ClassFactory.createTDConnection();
System.out.println(itdc.connected());
itdc.initConnectionEx(url);
System.out.println(itdc.connected());
itdc.connectProjectEx(domainName, projectName, userName, password);

// project name
System.out.println(itdc.projectName());

但我不能从对象做任何演员

ITestFactory itf=(ITestFactory) itdc.testFactory();

无法将线程“main”中的异常失败并java.lang.ClassCastException: $Proxy11转换为test.ota.ITestFactory

请帮忙

4

1 回答 1

4

您不能直接转换 COM 对象。请改用对象的 queryInterface 方法:

TargetType castObject = myObject.queryInterface(TargetType.class);

http://com4j.java.net/runtime-semantics.htmlCasting and QueryInterface _

于 2011-07-20T08:00:34.320 回答