我已将vb6 ocx转换为C#com控件。 此com控件由以下设置:
[Guid("986067DA-F6C4-4C19-82ED-5D4DF1F54DB1")]
[ClassInterface(ClassInterfaceType.AutoDual)]
//Implementing interface that will be visible from PowerBuilder
[ProgId("Cmnd90.ACmnd")]
[ComVisible(true)]
在vb6应用程序中加载此com控件时,它显示正确。 但是客户正在使用powerbuilder并且它没有显示在那里。客户说,为了让com控件在他的应用程序中显示,我们需要将控件的TYPEFLAGS设置为TYPEFLAG_FCONTROL。 怎么能在.NET中完成?
答案 0 :(得分:1)
也添加以下装饰:
[System.Runtime.InteropServices.TypeLibType(TypeLibTypeFlags.FControl)]
请参阅:http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.typelibtypeattribute.aspx