我正在尝试从源代码安装jvcl,但是我收到了错误 单位JvInterpreter的第1267行;
uses
TypInfo,
{$IFDEF JvInterpreter_OLEAUTO}
OleConst, ActiveX, ComObj,
所以我从使用中删除了ComObj
并等待更远的错误:
关于EOLEError
有一个错误,这是OleAuto的一部分,我补充说并希望最好,但....
我在这行#1799上收到错误:
DispatchInvoke(IDispatch(Dispatch), CallDesc, PDispIDList(@DispIDs[0]), ParamTypes, Result);
所以问题是:ComObj
发生了什么,XE2中DispatchInvoke
需要哪个单位?
答案 0 :(得分:2)
解决方案是更改uses
以使用完全限定名称:
uses
TypInfo,
{$IFDEF JvInterpreter_OLEAUTO}
OleConst, ActiveX,
{$IFDEF VER230} system.win.ComObj, {$ELSE} ComObj, {$ENDIF}
现在编译没有错误。
见:What is the compiler version for Delphi 2010?
有关编译器定义的列表。
答案 1 :(得分:2)
只需添加system.win即使用system.win.comobj
而不是comobj