Compilerfehler C3707
'Funktion': Die dispinterface-Methode muss über eine Dispid verfügen.
Wenn Sie eine dispinterface
Methode verwenden, müssen Sie ihr einen dispid
zuweisen. Um diesen Fehler zu beheben, weisen Sie der dispinterface
-Methode eine dispid
zu, indem Sie z. B. die Auskommentierung des id
-Attributs für die -Methode im folgenden Beispiel aufheben. Weitere Informationen finden Sie unter den Attributen dispinterface und id.
Im folgenden Beispiel wird C3707 generiert:
// C3707.cpp
#include <atlbase.h>
#include <atlcom.h>
#include <atlctl.h>
[module(name="xx")];
[dispinterface]
__interface IEvents : IDispatch
{
HRESULT event1([in] int i); // C3707
// try the following line instead
// [id(1)] HRESULT event1([in] int i);
};
int main() {
}