tlibimp.exe(バージョン11.0)を使用して、サードパーティの.NETタイプライブラリ(COMサーバーDLL)をインポートしようとしています。これは基本的にうまく動作しますが、Windows XPを実行している別のWindows 7と、別のWindows 7を実行しているときに結果が異なります。Win7マシンで生成されたコードはコンパイルされません。tlibimp.exeの出力が異なるOSで異なる
両方のマシンがあります。
- ボーランドC++(RAD Studioの)限り私は2007年、 ボーランドを言うことができるように11.0
- 同じバージョンの.NETフレームワークがインストールされて2007
- tlibimp.exeバージョン(使用する.NET V2)
- bcc32.exeバージョン5.93
:
Parameter mismatch in write access specifier of property Font
(OKコンパイル)XPマシン上のコードの関連行がある:
__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
私は、問題のクラスの2つのバージョン(1行だけでなく)に大きな違いがあると付け加えておきます。 WinXPのバージョンはTOleControlから継承され、Win7はOleserver :: TOleServerから継承されます – Hendrik