1

私は (今のところ) Embarcadero C++ Builder XE2 Architect の試用版を使用しています。Borland C++ Builder 6 から現在のコードを移行する作業を行っています。

パッケージにインポートしてインストールしているタイプ ライブラリがいくつかあります。これまでのところ、私が遭遇したものは問題なくインポートされました。ただし、OLE Automation 2.0 ライブラリをインポートする必要がありました。これを行うと、いくつかのエラーが表示されます。最初のエラーは、この投稿のタイトルに記載されています。

これまでにインポートしたその他のライブラリは、Crystal Reports ActiveX Designer Run Time Library 11.0 (craxdrt.dll) と Microsoft Jet and Replication Objects 2.6 Library (msjro.dll) です。

以下は、IDE が問題を示している場所を示しています (ファイル stdole_TLB.h)。

typedef Stdole_tlb::IFontDisp IFontDisp;
typedef Stdole_tlb::IFontDisp *IFontDispPtr;
typedef Stdole_tlb::IPictureDisp IPictureDisp;
typedef Stdole_tlb::IPictureDisp *IPictureDispPtr;

これらの完全なパーサー コンテキスト メッセージは、次のように表示されます。

stdole_TLB.cpp(28): #include ..\9.0\Imports\stdole_TLB.h
stdole_TLB.h(56): namespace Stdole_tlb

また、別のエラー メッセージが表示されます。

[BCC32 Error] stdole_TLB.h(254): E2029 'TDispWrapper<IDispatch>' must be a previously defined class or struct
  Full parser context
    stdole_TLB.cpp(28): #include ..\9.0\Imports\stdole_TLB.h
    stdole_TLB.h(56): namespace Stdole_tlb
    stdole_TLB.h(253): class IUnknown

最後の 1 つは多くのエラー メッセージを生成するので、それをノックアウトできれば、ほとんどのエラーはなくなると思います。

どんな助けでも大歓迎です!

4

0 に答える 0