Test de Verification existence d'un fichier sur un HD
Résolu/Fermé
luclochtmans
Messages postés
9
Date d'inscription
lundi 24 juin 2019
Statut
Membre
Dernière intervention
25 avril 2021
-
Modifié le 20 juil. 2019 à 15:18
Utilisateur anonyme - 27 juil. 2019 à 20:10
Utilisateur anonyme - 27 juil. 2019 à 20:10
A voir également:
- Test de Verification existence d'un fichier sur un HD
- Test performance pc - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier rar - Guide
- Ouvrir un fichier .bin - Guide
2 réponses
yg_be
Messages postés
23327
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
15 novembre 2024
Ambassadeur
1 551
20 juil. 2019 à 15:18
20 juil. 2019 à 15:18
bonjour, moi j'essaierais ainsi:
dim lenomdufichier as string lenomdufichier = LE_HD & TX_NOM_OI.Text & ".jpg" if dir(lenomdufichier) = "" then ' fichier absent else ' fichier présent end if
Utilisateur anonyme
23 juil. 2019 à 16:41
23 juil. 2019 à 16:41
Bonjour
Voici un petit tuto sur différentes façons de passer des informations entre forms
https://codes-sources.commentcamarche.net/faq/11107-interactions-entre-form-en-net-c-et-vb-net
Je me permets une remarque sur la solution proposée par yg_be (que je salue).
Ce n’est pas du vb.net, c’est du Vb6 ou du vba. Comme tu n’as pas précisé yg_be n’a pas forcément fait attention.
Cela fonctionne car Microsoft tolère certaines instructions de vb6 dans vb.net. Cependant vb.net est un langage tout objet, alors que vb6 était orienté objet. Et de fait mélanger torchons et serviettes n’est pas la meilleure façon de bien apprendre à utiliser les torchons.
Et puis il y a quelques cas, rares, où ça buggue de façon assez incompréhensible, donc très difficile à détecter.
En .net pour vérifier l’existence d’un fichier, il faut utiliser la classe File et sa méthode Exists
Si tu veux plus d’informations sur les différences entre vb6 et vb.net, tu peux lire ce petit article https://codes-sources.commentcamarche.net/faq/11151-pourquoi-mon-code-vb6-vba-ne-marche-pas-en-vb-net
Voici un petit tuto sur différentes façons de passer des informations entre forms
https://codes-sources.commentcamarche.net/faq/11107-interactions-entre-form-en-net-c-et-vb-net
Je me permets une remarque sur la solution proposée par yg_be (que je salue).
Ce n’est pas du vb.net, c’est du Vb6 ou du vba. Comme tu n’as pas précisé yg_be n’a pas forcément fait attention.
Cela fonctionne car Microsoft tolère certaines instructions de vb6 dans vb.net. Cependant vb.net est un langage tout objet, alors que vb6 était orienté objet. Et de fait mélanger torchons et serviettes n’est pas la meilleure façon de bien apprendre à utiliser les torchons.
Et puis il y a quelques cas, rares, où ça buggue de façon assez incompréhensible, donc très difficile à détecter.
En .net pour vérifier l’existence d’un fichier, il faut utiliser la classe File et sa méthode Exists
If File.Exists(“chemin du fichier”) then
Si tu veux plus d’informations sur les différences entre vb6 et vb.net, tu peux lire ce petit article https://codes-sources.commentcamarche.net/faq/11151-pourquoi-mon-code-vb6-vba-ne-marche-pas-en-vb-net
yg_be
Messages postés
23327
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
15 novembre 2024
1 551
23 juil. 2019 à 17:52
23 juil. 2019 à 17:52
merci de la clarification et des infos, je n'avais effectivement pas fait attention.
par ailleurs, en Belgique, nous appelons "torchon" une serpillière, et "essuie de vaisselle" un torchon. ce qui fait que nous avons peu de chance de mélanger nos torchons et nos serviettes, :-)
par ailleurs, en Belgique, nous appelons "torchon" une serpillière, et "essuie de vaisselle" un torchon. ce qui fait que nous avons peu de chance de mélanger nos torchons et nos serviettes, :-)
yg_be
Messages postés
23327
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
15 novembre 2024
1 551
23 juil. 2019 à 18:08
23 juil. 2019 à 18:08
@Whismeril
(ne parvenant pas à t'envover un message privé)
vers la fin de ton article intéressant comparant vb à vb.net, tu écris
"Quand on revient à VB.Net, on ne fait plus de mélange."
moi je lirais plutôt, soit:
Quand on revient à VB, on ne fait plus de mélange.
soit
Quand on va vers VB.Net, on ne fait plus de mélange.
(ne parvenant pas à t'envover un message privé)
vers la fin de ton article intéressant comparant vb à vb.net, tu écris
"Quand on revient à VB.Net, on ne fait plus de mélange."
moi je lirais plutôt, soit:
Quand on revient à VB, on ne fait plus de mélange.
soit
Quand on va vers VB.Net, on ne fait plus de mélange.
Mon wallon est un peu rouillé, il y plus de 25 ans que j’ai quitté la frontière Lorraine pour le sud ouest ;)
Pour ta remarque sur l’article, comme au départ je le destinais à des codeurs de vb6/vba qui se lançaient avec plus ou moins de réussite dans .net, y’avait comme une idée de détour par c#, puis d’un éventuel retour à VB.Net. Mais ta proposition est plus générale, ce qui est mieux.
Je ne ferais pas la correction tout de suite, je n’ai pas accès à un ordinateur pour le moment.
Bonne soirée
Pour ta remarque sur l’article, comme au départ je le destinais à des codeurs de vb6/vba qui se lançaient avec plus ou moins de réussite dans .net, y’avait comme une idée de détour par c#, puis d’un éventuel retour à VB.Net. Mais ta proposition est plus générale, ce qui est mieux.
Je ne ferais pas la correction tout de suite, je n’ai pas accès à un ordinateur pour le moment.
Bonne soirée
luclochtmans
Messages postés
9
Date d'inscription
lundi 24 juin 2019
Statut
Membre
Dernière intervention
25 avril 2021
27 juil. 2019 à 13:41
27 juil. 2019 à 13:41
Bonjour,
Pour info " Grand débutant " j'utilise donc Visual Basic Express 2010 et je n'ai vraiment aucune idée quant à savoir si c'est VBA, VB6 ou .NET.
Je viens de tester la suggestion utiliser " If File.Exists(“chemin du fichier”) then " cela ne marche pas après avoir remplacer mon If Dir () par votre If File.Exists( ) le mot File est souligné d'un petit rectangle rouge qui une fois cliqué m'informe que ' File n'est pas déclaré. il peut être......... '
Néanmoins Merci pour votre intérêt à ma demande
Amicalement
Luc
Pour info " Grand débutant " j'utilise donc Visual Basic Express 2010 et je n'ai vraiment aucune idée quant à savoir si c'est VBA, VB6 ou .NET.
Je viens de tester la suggestion utiliser " If File.Exists(“chemin du fichier”) then " cela ne marche pas après avoir remplacer mon If Dir () par votre If File.Exists( ) le mot File est souligné d'un petit rectangle rouge qui une fois cliqué m'informe que ' File n'est pas déclaré. il peut être......... '
Néanmoins Merci pour votre intérêt à ma demande
Amicalement
Luc
Visual Basic Express 2010 est l’environnement de développement pour le langage VB.Net.
Pour avoir accès à une classe, il faut importer son espace de nom dans ton code. Certains sont inclus par défaut et d’autres non.
Quand il manque un espace de nom, en faisant click droit sur le mot clé souligné VB te propose la solution à appliquer. Pour 2010, je ne sais plus comment cela se présente.
Si tu veux résoudre à la main, dans ce cas, il faut ajouter
Pour avoir accès à une classe, il faut importer son espace de nom dans ton code. Certains sont inclus par défaut et d’autres non.
Quand il manque un espace de nom, en faisant click droit sur le mot clé souligné VB te propose la solution à appliquer. Pour 2010, je ne sais plus comment cela se présente.
Si tu veux résoudre à la main, dans ce cas, il faut ajouter
Import System.IOtout en haut de ton fichier de code.
Modifié le 23 juil. 2019 à 15:55
Avec un peu de retard je prends le clavier afin de vous remercier pour votre aide, de retour d'un petit séjour en Alsace, je découvre ce jour votre réponse.
L'âge et quelques séquelles de mon récent AVC sont probablement la cause de cette défaillance à me concentrer sur l'essentiel, en effet je faisait compliqué alors que la solution était on ne peut plus simple.
Grâce à votre aide, j'obtiens bien maintenant ce contrôle d'existence du fichier solliciter.
Permettez moi de vous solliciter à nouveau pour une remise sur Rail ou solution à un second souci que je rencontre. Voici de quoi il est question.
Je lance le projet qui m'affiche un formulaire de saisie dans lequel le champ de saisie Nom de l'oiseau est lié à la variable TX_NOM_OI.
En bas du formulaire j'ai un Bouton qui une fois sollicité me permet d'afficher la Photo de l'oiseau dans une nouvelle fenêtre (Jusqu'ici tout est OK )
Cette nouvelle fenêtre possède également un bouton qui doit ouvrir une seconde fenêtre pour pouvoir visualiser La Fiche d'identification et caractéristique de l'oiseau. ( C'est à ce niveau que cela me pose souci )
Dans le Premier formulaire TX_NOM_OI est donc assimilé à MERLE lorsque je clique sur voir la Photo, la Variable NOM_FICHE prends la valeur texte de TX_NOM_OI ( Merle ) via un MsgBox je vérifie et c'est OK, Mais lorsque je sollicite la vue de la fiche cette Variable NOM_FICHE est vide et ne me permet pas de continuer et d'avoir accès à la dite fiche.
Je précise que j'ai essayé de dimensionné en Dim NOM_FICHE As String ou encore Public..... Mais rien n'y fait.
A mon avis je ne formate pas correctement la variable ou alors cela n'est pas exécuté au bon endroit.
Si vous estimé que la réponse ne fera pas bon ménage avec le forum, Voici mon adresse courriel :
Adresse mail supprimée Modération CCM
Encore Merci
Amicalement
Luc (77 ans et débutant avec VB Net )
23 juil. 2019 à 14:57
il est découragé de montrer son adresse email ou de donner des informations personnelles dans les messages.
pour en venir au fond. il y a sans doute moyen de récupérer le contenu d'un champ du premier formulaire à partir du deuxième. (ce serait plus simple si tu donnais un nom à chaque formulaire)
cependant, je pense qu'une variable bien déclarée devrait également convenir. essayons donc de trouver ce qui ne va pas avec la variable NOM_FICHE. deux choses me viennent en tête:
- as-tu bien ajouté "option explicit" au début de chaque module de code
- n'as-tu déclaré (avec dim) qu'une seule fois la variable NOM_FICHE?
27 juil. 2019 à 13:29
En premier je prends bonne note de vos remarques soit ouvrir un nouveau sujet et ne pas donner son adresse perso. donc Mea Culpa Méa maxima...........
Pour Info mes deux formulaires sont Nommés: le premier celui qui affiche la photo est donc identifié par le nom : AFFICHE_IMAGE
Le second formulaire qui est donc appelé par le clic sur le Bouton Voir_Fiche qui se trouve sur le Formulaire AFFICHE_IMAGE est quant à lui nommé AFFICHE_FICHE.
Je vais donc reconsidéré mon approche sur cette phase de Vue sur la fiche identificatrice de l'oiseau affiché dans le formulaire AFFICHE_IMAGE
Pour rappel j'utilise donc Visual Basic Express 2010 et je n'ai vraiment aucune idée quant à savoir si c'est VBA, VB6 ou .NET mais ce que je peux vous dire c'est que votre réponse sur comment vérifier l'existence.......
L'option proposée soit " IF Dir(chemin du fichier ) then " fonctionne 100% ok
Par contre la solution suggéré par soit If File.Exists(chemin du fichier) then, lui il Bug et le mot file est souligné rouge qui en le sollicitant m'informe que ' File n'est pas déclaré. il peut être......... ' alors qu'avec Dir tout est Ok.
Merci
Luc