0

Visual Studio 2008 で ATL dll プロジェクトを作成したところ、次のクラスが生成されました...

template <class T>
class CProxy_IAutomateEvents : public IConnectionPointImpl<T, &__uuidof( _IAutomateEvents ), CComDynamicUnkArray>
{
//警告、このクラスはウィザードによって再生成されます。
パブリック:
};

idl の IAutomateEvents ディスパッチ インターフェイスにメソッドを追加し、再コンパイルしました。Fire_ メソッドを生成する方法がわかりません。どのウィザードについて話しているのですか? ある時点で上記のウィザードを実行すると、時代遅れになったり、置き換えられたりする可能性があるため、手動で実行したくありません。クラスを右クリックして [接続ポイントの追加] を選択すると、このようなことがすべて見つかりますが、そのオプションは表示されません。ヘルプ?

4

2 に答える 2

2

イベントインターフェイスを更新する場合、プロキシクラスは自動的に更新されないため、変更が完了したら、新しいメソッドが表示されるようにプロキシクラスを再生成する必要があります。

プロキシクラスを再生成するには、プロジェクトのクラスビューを開き、クラスを見つけて、コンテキストメニューから[追加]、[接続ポイントの追加]を選択します。すでに実装されている接続ポイントについて心配する必要はありません。初めてのように追加するだけです。クラスが更新され、イベント生成メソッドを備えたプロキシクラスも更新されます。

于 2013-03-21T06:05:29.873 に答える
0

気にしない。私のクラスビューには、CLASSとIAutomateというインターフェイスが含まれていました。それは私が右クリックしていたもので、接続ポイントの追加をサポートしていませんでした。私はついにCAutomateクラスに気づき、それを右クリックし、接続ポイントの追加を選択してから、finishを押すだけで、すべてのFire_関数が実装されました。誰かの時間を無駄にしてすみません。

于 2013-03-20T22:43:51.853 に答える