begin process at 2010 02 10 08:26:46
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Delphi

 > 

Archives

 > 

J'AI BESOIN D'AIDE !!!! :O

 > 

Problème femeture d'une appli "multi Form"


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème femeture d'une appli "multi Form"

mercredi 12 octobre 2005 à 23:07:59 | Problème femeture d'une appli "multi Form"

DeltaFX

Bonsoir la planete

J'ai un gros problème: je me suis lancé dans la création d'un programme multi Form.

J'ai donc
- une Form Principale qui me fait l'affichage d'une webcam
- une première Form secondaire qui gère une interface USB vers une carte I/O
- une seconde Form secondaire qui phagocyte un programme de navigation routiere
- Et une troisième form qui contient un player MP3.

Toutes mes Form sont en bsnone, elles ont des positions prédéfinie à l'écran, et son susceptiblede changer de taille, de se recouvrir mutuellement. Par exemple, la partie MP3 est un rectangle de 120(w) *268(h) dans 90% des cas, sauf quand j'ai besoin d'une interface + complete, au quel cas la form fait 680*268 et là j'ai les boutons load et scan, mes scrollList pour les mp3 et les playlists etc etc. A ce moment là, elle cache la Form de navigation routiere (pas grave, guidage vocal)  Vous voyez le principe ?

Tout semble marcher jusqu'au moment ou je veux quitter l'appli, et là ca se gate.

j'ai systématiquement une erreur A win32 api function failed, je tente un CTRL-F2, boom, le programme a provoquer un gros merdier dans Kernel 32, la machine freeze et j'ai le droit de rebooter à la manière hard (le piti bouon reset en facade, ahemmm).


Pourl'instant, j'ai un bouton exit (surla Form principale ) qui fait :

Begin
   Form_Nav.Close;
   Application.processmessages;

   Form_Hard.Close;
   Application.processmessages;

   Form_MP3.Close;
   Application.processmessages;

   Form_Main.Close;
end.

Bien evidement, les OnCLose de chaques form secondaires sont présents pour arreter les timers, liberer les images si besoins, fermer le prog de navigation proprement (et c'est pas du gateau), purger mes tableaux dynamique, fermer la carte interface.

En fait, chacune de ces form marche bien en tant qu'appli autonome, mais ensemble...

D'ou mon problème,comment fermer de manière propre une appli Multi Form.?

Delphi 7 Ent.  sous win98se.

jeudi 13 octobre 2005 à 09:41:31 | Re : Problème femeture d'une appli "multi Form"

jmp77

Membre Club
Hello,

Mais le bug se produit à la fermeture de quelle fenetre?
Sinon tu as la commande Application.Terminate pour finir une appli.

Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
jeudi 13 octobre 2005 à 10:14:25 | Re : Problème femeture d'une appli "multi Form"

DeltaFX

Ca se produit à la fermeture de la fenetre principale. Et ca arrive aussi avec un application.terminate (et d'ailleurs j'ai lu ici que application.terminate n'était pas recommandé...)...

gnh !
jeudi 13 octobre 2005 à 10:29:35 | Re : Problème femeture d'une appli "multi Form"

jmp77

Membre Club
re,

Copie le onclose de ta derniere fenetre pour que l on puisse t'aider.

Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
jeudi 13 octobre 2005 à 10:46:06 | Re : Problème femeture d'une appli "multi Form"

padsou

tu dois libérer toutes les ressources allouées avant de fermer la fiche. Je pense spécialement à la libération des fenetres créées...

jeudi 13 octobre 2005 à 10:51:08 | Re : Problème femeture d'une appli "multi Form"

jmp77

Membre Club
Re,

Effectivement je pense que tu devrais un free plutot qu'un close pour fermer et libérer la mémoire allouée.

Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
jeudi 13 octobre 2005 à 10:55:52 | Re : Problème femeture d'une appli "multi Form"

DeltaFX

J'ai pasde onClose sur ma derniere fenetre ( la principale), uste un bouton exit

procedure TForm_Main.btn_ExitClick(Sender: TObject);
begin
  Alertes.Enabled:=False;
  Application.ProcessMessages;

// Fermeture Form hardware
  Form_Hard.Close;
  Application.ProcessMessages;

// Fermeture Form Navigation
  Form_Nav.Close;
  Application.ProcessMessages;

// Fermeture Form mp3
//  Form_Test.Close;
  Sleep(100);
// Et arret de l'appli elle-même.
  Application.Terminate;

end;


gnh !
jeudi 13 octobre 2005 à 11:16:25 | Re : Problème femeture d'une appli "multi Form"

jmp77

Membre Club
Essayes en fesant MaForm.Free plutot que MaForm.Close.

Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
vendredi 14 octobre 2005 à 20:53:19 | Re : Problème femeture d'une appli "multi Form"

DeltaFX

Réponse acceptée !
Résolu ! En traquant bien se qui se passait, à la fermeture du module hardware, la dll qui link le prog à la carte interface usb était tellement lente à faire son CloseDevice que le toute l'appli était déja fermée au moment où elle retournait son résultat => bug !

En fait ca s'est résolu au début en mettant 5 secondes de loop à faire des Application.Processmessages... c'est chiant, puis pris d'un doute je suis allé faire un tour sur le site du fabricant le carte I/O => dll updatée, temps de réaction quasi nul désormais, j'ai juste mis un sleep(10) histoire d'être sur.



Cette discussion est classée dans : problème, form, appli, multi, mp3


Répondre à ce message

Sujets en rapport avec ce message

Je crée un lecteur mp3 et j'ai un problème [ par Youyou0214 ] Pourriez vous me dire comment marche exactement le composant media player. S'il existe une autre façon de créer un lecteur mp3 pourriez vous m'indique Assisitant de config [ par manu00 ] Hello,j'aimerai faire un petit assistant au demarrage de mon appli histoire de configurer le truc facilement pour les utilisateurs.Seulement, je me de Soit le Thread, soit l'UDP [ par stailer ] Salut tout le monde,J'ai un petit problème avec mon appli en développement :J'utilise un thread dans lequel s'éxecute une connexion à des serveurs par Problème d'execution [ par StoneInFocus ] Salut, voilà je debutes sous Delphi 6 et j'ai créer un prog qui est en fait une succession de form au debut cela marchait trés bien mais dès que j'ai Les TFrames [ par stailer ] Salut tout le monde !j'ai un petit problème de frame :Par exemple, mon form principale c'est l'unit1 et je mets dedans une frame qui est l'unit2 et da Problème DDE [ par ccb9902 ] J'ai une form en Delphi 4 avec un DDEClientConv me permettant de faire un liaison DDE et de lancer des macros vers une application VB3 (que je ne peux problème de runtime avec un composant tdatabase [ par fcantan ] Bonjour,Mon appli développée en Delphi 7 dialogue avec oracle via ODBC.Si je n'utilise pas de composant Tdatabase, je n'ai aucun pb de déploiement sur Bizarrerie : form qui ne s'affiche plus [ par vieuxpere ] J'ai un problème un peu surprenant, j'ai travaillé pas mal sur un form ces derniers temps, quand on compile l'exe pas de problème, et depuis quelques focalisation de Form [ par LaBille ] Salut à tousJ'ai un problème de focalisation de form. J'ai déjà vu un pb similaire sur le forum mais mon pb est un peu différent et la solution propos Problème de compatibilité ou pas ! [ par JulioDelphi ] Hello,bon voila j'ai fait une appli, limite toute bete. Je la teste, elle fonctionne a merveille.Je la transporte sur un autre PC (meme OS meme SP), e


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,936 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales