Borland Devスタジオは2006年Turbo C++Explorerコンパイルの問題[定休日]

StackOverflow https://stackoverflow.com/questions/286253

  •  08-07-2019
  •  | 
  •  

質問

G家庭の皆様

私はピC++ともより一層力を入れているBorland Turbo C++以下のように変更しました。私たこのコンパイルエラーが発生します。他の手がかりにして、どこを直せばいいの?

[C++ Error] comsvcs.h(3209): E2015 Ambiguity between 'ITransaction' and 'Oledb::ITransaction'
[C++ Error] comsvcs.h(3275): E2015 Ambiguity between 'ITransaction' and 'Oledb::ITransaction'
[C++ Error] comsvcs.h(16197): E2015 Ambiguity between 'ITransaction' and 'Oledb::ITransaction'
[C++ Error] comsvcs.h(16293): E2015 Ambiguity between 'ITransaction' and 'Oledb::ITransaction'

このコードが最初に発生

EXTERN_C const IID IID_ICreateWithTransactionEx;

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("455ACF57-5345-11d2-99CF-00C04F797BC9")
    ICreateWithTransactionEx : public IUnknown
    {
    public:
    virtual /* [helpstring][helpcontext] */ HRESULT STDMETHODCALLTYPE CreateInstance(
        /* [in] */ ITransaction *pTransaction,
        /* [in] */ REFCLSID rclsid,
        /* [in] */ REFIID riid,
        /* [iid_is][retval][out] */ void **pObject) = 0;

    };

カップルのご提案から別のソース:

として、エラーメッセージのコンパイラの絵が2の宣言のITransactionデータ型の範囲の作成ユニットです。このITransaction定義付属株式会社エンパシは、Microsoft社からwindowsのcomsvcs.hのOleDB::ITransactionは、実施のITransactionからインタフェースBorland.なっていう2つのもの

  1. 除OleDB::ITransaction定義んTurbo C++、ある部品を扱うoleDB.を除く。ですることができるように#include.検索のテキストoledb::ITransactionおincludeディレクトリまできれば、関連するファイルです。の変更などの経路ではいたしません。
  2. きみを定義するCINTERFACEでのコードをコンパイルエラーに含まれない場合には定義されています。が原因となるその他の問題...

は誰にでもいその他のご提案?

Kind regards, ブルース-.

役に立ちましたか?

解決

少しも不思議じゃないかCOMうごITransactionですが、私が思うように広がITransactionます。きさらに明確に機能だろうか?ま範囲のITransactionしたいのですか?"ということ::ITransaction"(グローバル名前空間または"some_other_namespace::ITransaction"?

他のヒント

あまりこの問題なんだか。更新後、ターボC++Explorer最新のパッチの問題がすっかりなくなりました。

下さった皆様、ありがとうござ提ります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top