none
C# 的Form上加载一个OCX的控件,在调用Form的ShowDialog时报错 RRS feed

  • 问题

  • C# 的Form上加载一个OCX的控件,在调用Form的ShowDialog时报错,具体内容如下:

    确定如何封送“IOleInPlaceFrame”类型的成员“SetActiveObject”的参数时发生以下错误: System.Runtime.InteropServices.MarshalDirectiveException: 无法封送处理“parameter #1”: 无效的托管/非托管类型组合(字符串参数和返回类型必须与 LPStr、LPWStr、LPTStr、BStr、TBStr、VBByRefStr 或 AnsiBStr 成对出现)。,这很可能是由于某个参数上的 MarshalAs 属性不兼容而导致的。

    但是在OCX调试模式下运行不报错,请问是什么原因,谢谢!


    guiwenyang
    2010年9月16日 2:38

全部回复