Bonjour,
Voila j'ai codé une dll en C++ avc VC++ dans cette DLL il y'a un thread. qui gere une connexion, socket, etc...
A coté j'ai une interface graphique (.exe), développée en Delphi 7. Cet interface utilise la DLL.
A L'init, l'application passe en parametres a la DLL des pointeurs sur ses fonctions. Ainsi Mon thread c++ peut acceder a des focntions delhpi.
JE me sert de ces fonctions comme evenements du style procedure OnConnect(), procedure OnDeconnect();
Tous marche bien jusqu'a ce que j'essaye dans uen de ces focntion (procedure OnMsg() ) de creer une fenetre:
Form1 := TForm.Create( Self );
ou
Form1 := TForm.Create( FrmMain );
ca ce moment la Delphi perd les pedales, c'est a dire que la fenetre j'affiche bien, mais n'est pas "rafreshie" elle est blanchatre et ne repond pas. par contre si un autre evenements est appellé la fenetre principale est bien rafreshie et repond bien, mais la fenetre creer reste en "nouille"
Et quand je coup l'appli j'ai une erreur "Handle de fenetre non valide"
Pour info:
------------
Si je delgue le create a un timer sur la fiche (interval 1) et que mon evenement OnMsg() ne fait que FrmMain.Timer1.Enable := True; ca marche bien mais c'est pas tres propre
Je ne comprend pas pkoi ca me fait ca. j'ai essayé sur plusieurs machine et a chaque fois idem....
quelqu'un a une idée ???
y'a t'il un rapport entre le Create et l'appellant ???
Quelqu'un a une solution ???
Si vous avez compris mon probleme:
Est ce une bonne solution pour gerer des evenements entre une DLL et une appli ???
Comment dois je m'y prendre si non ????
:( cela remet en cause toute mon aplli qui est déja pas mal avancée :( !!!
MERCI de m'aider suis vraiment en misere la trovu erien a ce sujet sur le net, ou alors je cherche mal...
A++
Grosiflex