Erreur avec SelectDirectory

Résolu
papyvore
Messages postés
223
Date d'inscription
samedi 15 novembre 2003
Statut
Membre
Dernière intervention
16 décembre 2021
- Modifié le 16 janv. 2018 à 15:31
papyvore
Messages postés
223
Date d'inscription
samedi 15 novembre 2003
Statut
Membre
Dernière intervention
16 décembre 2021
- 24 mars 2018 à 14:05
Bonjour,


if not SelectDirectory('Choisir un dossier', ExtractFileDrive(Dir), Dir, [sdNewUI]) then
exit
else
begin
ScruteDossier(Dir, '*.jpg', attributs, True, '', '');
........
end;

cette solution marche bien
mais celle ci provoque une exception ??? je comprend pas pourquoi

if SelectDirectory('Choisir un dossier', ExtractFileDrive(Dir), Dir, [sdNewUI]) then
begin
ScruteDossier(Dir, '*.jpg', attributs, True, '', '');
..........
end
else
exit;

j'ai une exception sur le if quand je clic annuler; . étonnant pour moi
si quelqu'un peut m'expliquer merci

papyvore

3 réponses

cs_cantador
Messages postés
4720
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
31 juillet 2021
14
21 mars 2018 à 18:36
bonsoir papyvore,

essaie comme ceci :


procedure SelectionRepertoire;
begin
if SelectDirectory(ChoixRepertoire, [sdAllowCreate, sdPerformCreate, sdPrompt], 0) then
ScruteDossier1.execute
else
exit;
end;


@+
0
papyvore
Messages postés
223
Date d'inscription
samedi 15 novembre 2003
Statut
Membre
Dernière intervention
16 décembre 2021
15
22 mars 2018 à 09:08
salut
merci de la proposition j'avais testé cette solution mais ça ne marchait pas d'autant que
if SelectDirectory(Chemin, [sdAllowCreate, sdPerformCreate, sdPrompt], 0) then

et
if not SelectDirectory('Choisir un dossier', ExtractFileDrive(Chemin), Dir, [sdNewUI]) then

n'ouvrent pas la même boite de dialogue.
je reste alors sur ma solution merci quand même.
0
Cirec
Messages postés
3832
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
17 février 2022
48
22 mars 2018 à 13:54
Salut,

j'ai testé le bout de code avec Delphi 2009 & Tokyo 10.2
et j'ai pas eut d'erreur !!!


0
papyvore
Messages postés
223
Date d'inscription
samedi 15 novembre 2003
Statut
Membre
Dernière intervention
16 décembre 2021
15
22 mars 2018 à 14:55
effectivement avec le code que tu propose il n'y a pas d'erreur .
J'avais une exception avec
if  SelectDirectory('Choisir un dossier', ExtractFileDrive(Dir), Dir,    [sdNewUI]) then 
begin
ScruteDossier(Dir, '*.jpg', attributs, True, '', '');
..........
end
else
exit;

quand je clic sur annuler.
si je choisi ,
if not SelectDirectory('Choisir un dossier', ExtractFileDrive(Dir), Dir,   [sdNewUI]) then 
exit

c'est seulement par ce que la boite de dialogue me va mieux
0
Cirec
Messages postés
3832
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
17 février 2022
48
23 mars 2018 à 20:32
justement c'est avec ce code que j'ai fait le teste:

uses FileCtrl;
procedure TForm1.Button1Click(Sender: TObject);
var
 Dir: string;
begin
  Dir := ExtractFilePath(Application.ExeName);
  if  SelectDirectory('Choisir un dossier', ExtractFileDrive(Dir), Dir,  [sdNewUI]) then
  begin
//      ScruteDossier(Dir, '*.jpg', attributs, True, '', '');
//      ..........
  end
  else
  exit;
end;


Cordialement,
0
papyvore
Messages postés
223
Date d'inscription
samedi 15 novembre 2003
Statut
Membre
Dernière intervention
16 décembre 2021
15
24 mars 2018 à 14:05
:( désolé effectivement je viens de le test hors de mon prog initial et ça marche très bien.
je vais rependre mon prog pour essayer de comprendre où j'ai m..
si je trouve je posterais d'où vient mon erreur.
merci d'avoir insisté ça va me forcer un peu a réfléchir :)
0