[C++/CLI] probl�me avec Timer ou delegate
Bonjour tout le monde,
Voila je voudrais utilis� un Timer dans du manag�, afin de check de mani�re p�riodique le contenu d'un tableau qui est rempli dans du c++ natif.
La d�claration de mon pointeur se passe sans accroc, le probl�me est lorsque je donne � mon timer la fonction qu'il doit apel� lorsqu'il arrive � 0. Une premi�re erreur �tait de ne pas donn� l'adresse de cette fonction mais de la pass� directement en param�tre (vs 2005 � crier, et ma donn� la correction). Et l� maintenant, j'ai une erreur assez surprenante..
Citation:
Error 1 error C3352: 'void CliWrapper::CliWrapperEigenvalues::t_Elapsed(System::Object ^,System::Timers::ElapsedEventArgs ^)' : the specified function does not match the delegate type 'void (System::Object ^,System::Timers::ElapsedEventArgs ^)' c:\users\paqueth\HerculeNew\Hercule.Presentation.UI.sln\Hercule.Business.Wrapper\CliWrapperEigenvalues.cpp 41
Donc les deux signatures de m�thodes sont a priori les m�mes mais VS2005 ne le voit pas comme ca...
D�claration et initialisation de mon Timer
Code:
1 2 3 4 5
| System::Timers::Timer ^t = gcnew System::Timers::Timer();
t->Elapsed += gcnew Timers::ElapsedEventHandler(&CliWrapperEigenvalues::t_Elapsed);
t->Interval = 1000;
t->AutoReset = false;
t->Start(); |
Fonction qui doit �tre appel�e
Code:
1 2 3 4
| System::Void CliWrapperEigenvalues::t_Elapsed(Object^ sender, Timers::ElapsedEventArgs^ e)
{
} |
Si quelqu'un pouvait trouver le probl�me ca me ferait grandement plaisir :oops: