3

私は現在、いくつかのレガシー c++ com コンポーネントに取り組んでいる ac# 開発者です。登録せずに他の com コンポーネントを呼び出すために、アクティベーション コンテキスト API コードを com コンポーネントに追加しようとしています。

アクティベーション コンテキストを操作するダミーの C++ プロジェクトを作成しましたが、問題なく動作しました。ただし、同じコードを従来の com コンポーネントに追加すると、コンパイルすることさえできません: エラー 1 エラー C2065: 'ACTCTX' : 宣言されていない識別子

ダミー プロジェクトに特別なヘッダーを追加しませんでしたが、正常に機能したので、なぜこれが起こっているのかわかりません。うまくいけば、これはベテランの C++ 開発者にとっては些細なことです...

4

1 に答える 1

2

stdafx.hでこれを変更しました:

#ifndef _WIN32_WINNT
#define _WIN32_WINNT 0x0400

#ifndef _WIN32_WINNT
#define _WIN32_WINNT 0x0501

そしてそれはうまくいった。

于 2011-06-17T14:26:09.333 に答える