0
我正在尝试使用tlibimp.exe(版本11.0)导入第三方.NET类型库(COM服务器DLL)。这基本上可以正常工作,但是当我在不同的计算机上运行它时,结果会有所不同,其中一台运行Windows XP,另一台运行Windows 7.更糟的是,在Win7机器上生成的代码无法编译。tlibimp.exe输出在不同的操作系统上有所不同
两台机器有:
- 的Borland C++(RAD Studio企业)2007
- tlibimp.exe版本安装11.0
- 同.NET framework版本(据我所知,2007年的Borland 使用.NET V2)
- bcc32.exe版本5.93
编译器在OCX.h失败:
Parameter mismatch in write access specifier of property Font
的代码XP的机器(其编译OK)上的相关的行是:
__property Graphics::TFont * Font={ read=GetTFontProp, write=_SetTFontProp, stored=false, index=-512 };
Win7的机器(其失败)在同一行中是:
__property IFontDisp* Font={ read=get_Font, write=set_Font, stored=false };
现在我不确定这种差异是从哪里来的。有任何想法吗?
欢呼 亨德里克
.net COM服务器如何导出VCL'Graphics :: TFont'? –
我不知道,但它似乎工作。这可能是一些Borland组件的包装魔法? – Hendrik
我应该补充说,这个类的两个版本之间存在巨大差异,而不仅仅是一行。首先,WinXP版本继承了TOleControl,而Ole7的Win7 :: TOleServer – Hendrik