インターフェイスを実装するオブジェクトがある場合、RTTI を使用してインターフェイスを検索し、その GUID を取得することはそれほど難しくありません。しかし、その名前が必要な場合、それを取得する方法はありますか? クラスの名前を取得するのは簡単ですが、インターフェイスの場合は少しトリッキーに思えます...
1539 次
1 に答える
1
注意が必要なのは、インターフェイスから RTTI を取得することです。それができた場合は、PTypeInfo
レコード ポインターに既に名前が含まれているはずです。
私のプログラムの 1 つで、GUID を文字列にマッピングする特別な登録システムを作成して、呼び出しQueryInterface
の失敗と " as
" キャストの失敗を報告できるようにしました。それは Delphi 2005 でした。私の理解では、それ以降の Delphi バージョンでは、インターフェイスの RTTI が進歩し、そのシステムはもう必要ないかもしれません。
于 2009-08-05T19:44:49.780 に答える