本帖最后由 jianye112 于 2011-05-15 21:53:03 编辑

解决方案 »

  1.   


    type pfnInvokeEx = function(IDispatchEx *, DISPID , LCID , WORD , DISPPARAMS *, VARIANT *, EXCEPINFO *, IServiceProvider *):HResult;stdcall;
    这一行没通过啊。怎么改呢?
      

  2.   

    type pfnInvokeEx = function(p1:IDispatchEx; p2:tDISPID; p3:LCID; p4: WORD; p5:PDISPPARAMS; p6:oLEVARIANT; p7:TEXCEPINFO; P8:PServiceProvider):HResult;stdcall;function Hook_InvokeEx(var this:IDispatchEx; const id: TDispID; const lcid: LCID; const wflags:
          WORD; const pdp: PDispParams; out varRes: OleVariant; out pei:
          TExcepInfo; const pspCaller: PServiceProvider): HResult; stdcall;
    上面编译通过。不过结果不对。
    Access violation at address 0013D530. Write of address 9B00E6B1.