OVH Cloud OVH Cloud

exception DirectoryNotFoundException...

1 réponse
Avatar
Benoit N
Bonjour,

Pour éviter d'avoir des problemes lors de la copie d'un fichier, je teste au
préalable l'existence des répertoires source et destination avec la fonction :
Directory.Exists(Dossier) qui retourne un booléen.
Hors si mon répertoire n'existe pas, je me retrouve avec une exception en
lieu et place de mon booléen... Est-ce normal ?

J'utilise le framework 1.0 SP2.

Merci

1 réponse

Avatar
Benoit N
En fait, le string testé contient un chemin absolu avec plusieurs niveaux
d'arborescences : c:_toto2001-31-2002-3-014CDP0120-09-2002
Hors seul le premier niveau de l'arborescence existe..
De plus, je viens de faire un nouveau test qui ne génère plus d'exeption :

Je faisais un test de type :
if (Directory.Exists(Dossier) && Directory.Exists(Dossier2)) // Dossier2 =
meme structure que Dossier
==> plantage



si je fais 2 if imbriqués cela fonctionne...



Le message d'erreur retourné :

Description : Une exception non gérée s'est produite au moment de
l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour
plus d'informations sur l'erreur et son origine dans le code.

Détails de l'exception: System.IO.DirectoryNotFoundException: Impossible de
trouver une partie du chemin d'accès
"c:_toto2001-31-2002-3-014CDP0120-09-2002".

Trace de la pile:

[DirectoryNotFoundException: Impossible de trouver une partie du chemin
d'accès "c:_toto2001-31-2002-3-014CDP0120-09-2002".]
System.IO.__Error.WinIOError(Int32 errorCode, String str) +287
System.IO.Directory.InternalGetFileDirectoryNames(String fullPath,
Boolean file) +251
System.IO.Directory.InternalGetFiles(String path, String searchPattern) +18
System.IO.DirectoryInfo.GetFiles(String searchPattern) +372
f.fs.FacturationHandler(Object source, EventArgs args) in
c:inetpubwwwrootffs.aspx.cs:193
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +108

System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +57
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler
sourceControl, String eventArgument) +18
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
System.Web.UI.Page.ProcessRequestMain() +1263