我正在尝试从源代码安装 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
需要什么单位? 最佳答案
解决方案是更改 uses
以使用完全限定名称:
uses
TypInfo,
{$IFDEF JvInterpreter_OLEAUTO}
OleConst, ActiveX,
{$IFDEF VER230} system.win.ComObj, {$ELSE} ComObj, {$ENDIF}
现在它编译没有错误。
参见:What is the compiler version for Delphi 2010?
对于编译器定义的列表。
关于Delphi XE2 找不到 ComObj.dcu 到哪里去了?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8476322/