Salut les gens,
J'ai un objet qui a une méthode qui effectue un certain traitement.
Problème : j'utilise l'api CreateThread de Windows pour exécuter les méthodes sauf que je ne peux pas exécuter une méthode d'un objet, j'ai un message d'erreur :
--> [Error] Unit1.pas(90): Variable required |
la tête de la fonction :
function TForm1.grimpe: boolean; |
le lancement du thread :
MonThread := CreateThread(nil, 0, @grimpe, nil, 0, id); |
Voilà le prototype de la fonction :
HANDLE CreateThread(
LPSECURITY_ATTRIBUTES lpThreadAttributes, // pointer to thread security attributes
DWORD dwStackSize, // initial thread stack size, in bytes LPTHREAD_START_ROUTINE lpStartAddress, // pointer to thread function LPVOID lpParameter, // argument for new thread DWORD dwCreationFlags, // creation flags LPDWORD lpThreadId // pointer to returned thread identifier ); |
sachant que cela fonctionne parfaitement si je met ceci :
function grimpe: boolean; |
Donc dès que je dis que la fonction appartient à Form1, ça ne passe plus. Donc vu que c'est le même principe avec un Objet perso, je sais pas comment faire