Tavounet
Messages postés7Date d'inscriptionmercredi 16 avril 2008StatutMembreDernière intervention19 mai 2008
-
16 mai 2008 à 13:46
Tavounet
Messages postés7Date d'inscriptionmercredi 16 avril 2008StatutMembreDernière intervention19 mai 2008
-
19 mai 2008 à 11:16
Bonjour,
J'ai un petit problème en programmation d'un logiciel en Delphi, je réalise le programme de façon à le lancer à partir d'un CD, j'ai donc créé une procédure de test afin de "capter" la lettre du lecteur où se trouve le CD.
Cependant, lorsqu'il n'y a pas de CD dans le lecteur, il me met une erreur "Pas de Disque" avec trois boutons, Continuer, Recommencer et Annuler.
J'aurais aimé ignorer cette erreur mais apparemment Delphi reste bloqué à la ligne qui génére l'erreur.
Code : if FileExists('e:\Txt\FichDetect0123.txt') then Lecteur:='e';
if FileExists('e:\Txt\FichDetect0123.txt') then Lecteur:='e';
// <----- le beug est surement ici.
Donc si on réfléchit 5 min : Si le fichier 'e:\Txt\FichDetect0123.txt' existe alors Lecteur:='e'; Mais si le fichier n'existe pas, qu'est ce qui passe ? Bien dans ton code rien : le reste de ta procédure continue d'avoir lieu. Donc effectivement si le fichier existe pas et que tu n'as pas arreté ta procédure, tu vas avoir droit à un beug.
Solution possible :
if FileExists('e:\Txt\FichDetect0123.txt') then Lecteur:='e'
Else Exit;
Guillemouze
Messages postés991Date d'inscriptionsamedi 25 octobre 2003StatutMembreDernière intervention29 août 20136 16 mai 2008 à 18:22
je pense pas que ce soit ca le probleme francky.
Son probleme vient du fait que la fonction FileExists de l'API windows ne retourne pas tant que l'utilisateur n'a pas inseré un cd ou cliqué sur abandonner.
Le probleme reel est de savoir si l'appel de fileExist va afficher un message qui fait qu'elle ne retournera pas avant une intervention de l'utilisateur. En gros, existe-il un fonction pour savoir si un lecteur est present.