|
分類:[C#]
お世話になります。
Visio(2007 Professional)のデータベースモデル図をC#/VB.NETから操作したいと思っています。 単なる図形オブジェクトの操作でしたらCOM経由でApplication->Documents->Document->Pages->Page->Shapesで操作できました。 操作したいと思っているのが、エンティティやリレーションをクリックした際に「データベースプロパティ」ペインに 表示される情報です。(エンティティでいえば物理名・概念名、リレーションでいえば物理名などです。)
COMでそれらしき「Microsoft Visio Database Modeling Engine Type Library」を試しに参照に追加してみたのですが、 COMからCLRに変換するタイプライブラリインポータ(Tlbimp.exe)でエラーが起きてそうなエラーメッセージがでて、 コンパイルに失敗します。
何か情報をお持ちでしたら教えていただけませんでしょうか。よろしくお願いいたします。
○ 環境 Visual Studio 2005(C#) Visio 2007 Professional
エラー 4 "ResolveComReference" タスクが予期せずに失敗しました。 System.SystemException: タイプ ライブラリ インポータで型の検証中にエラーが発生しました。クラス メンバなしでインポートしてください。 ---> System.TypeLoadException: アセンブリ 'Interop.MODELENGLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null' からの型 'MODELENGLib.VMEERModelClass' のメソッド 'IVMEERModel_UpdateVerbalizer' は、オーバーライドされたメソッドをオーバーライドしようとしています。 場所 System.Reflection.Module._InternalLoadInMemoryTypeByName(String className) 場所 System.Runtime.InteropServices.TypeLibConverter.TypeResolveHandler.ResolveEvent(Object sender, ResolveEventArgs args) 場所 System.AppDomain.OnTypeResolveEvent(String typeName) --- 内部例外スタック トレースの終わり ---
|