Erro do Compilador C3717
'method': um método que dispara eventos não pode ser definido
Você declarou um método de evento que inclui uma implementação. Uma declaração de método __event não pode ter uma definição. Para corrigir esse erro, verifique se nenhuma declaração de método de evento tem definições. Por exemplo, no código abaixo, remova o corpo da função da declaração event1
conforme indicado pelos comentários.
O exemplo a seguir gera C3717:
// C3717.cpp
[event_source(native)]
class CEventSrc {
public:
__event void event1() { // C3717
}
// remove definition for event1 and substitute following declaration
// __event void event1();
};
[event_receiver(native)]
class CEventRec {
public:
void handler1() {
}
void HookEvents(CEventSrc* pSrc) {
__hook(CEventSrc::event1, pSrc, CEventRec::handler1);
}
void UnhookEvents(CEventSrc* pSrc) {
__unhook(CEventSrc::event1, pSrc, CEventRec::handler1);
}
};
int main() {
}