私が働いている会社では、すべてのGUIをC#で開発していますが、アプリケーションカーネルは主にDelphi 5で開発されており(歴史的な理由から)、多くのコンポーネントがCOM+で作成されています。この非常に特殊な種類のアプリケーションに関連して、2つの質問があります。
DelphiやCOMの経験豊富な人たち、バグのあるTLBインターフェイスを操作するための回避策はありますか?バグのいくつかは次のとおりです。大きなTLBの編集中にIDEがクラッシュする、メソッドIDが失われる、TLBが破損するなど。ここでは、適切な解決策は見つかりませんでした。実際、新しい2007バージョンをアップグレードしてみました。ただし、新しいIDE TLBインターフェイスには、以前に見つかったものと同じバグがあります。
TLBのバージョンをどのように制御しますか?TLBファイルはバイナリ形式であり、競合の解決を行うのは非常に困難です。インターフェイス記述をIDLにエクスポートしてCVSにコミットしようとしましたが、Delphiを使用してIDLからTLBを生成する良い方法が見つかりませんでした。さらに、Microsoftが提供するMIDLツールは、delphiからエクスポートしたIDLファイルを正しく解析しませんでした。