Commande CMD sur visual basic express [Résolu/Fermé]

Signaler
-
Messages postés
6
Date d'inscription
samedi 7 novembre 2015
Statut
Membre
Dernière intervention
19 décembre 2015
-
Bonjour ,
voilà j'aimerais utiliser la fonction "OpenFileDialog" + Shell.
Je m'explique ; je veux que l'utilisateur désigne un fichier/dossier (OpenFileDialog) et que le logiciel fasse une commande CMD sur ce fichier désigné (Dans le cas présent , la commande ATTRIB.) Donc à la fin de mon code OpenFileDialog j'ai mis :
  Shell("ATTRIB" + OpenFileDialog2.FileName + "+s +h")

mais après l'avoir testé , un message d'erreur m'affiche "L'exeption FileNotFoundException n'a pas été gérée , fichier introuvable". Pouvez vous m'aider s'il vous plaît ? Merci d'avance !


PS: Je suis débutant à la programmation soyez indulgents ;)

4 réponses

Messages postés
15441
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
28 janvier 2021
648
Bonsoir tu parles de Visual Basic Express, j'en déduit donc que tu travailles en VB.Net

Shell n'existe pas en VB.Net, il faut utiliser Process.Start.

Si j'en crois cette page ta ligne de commande n'est pas dans le bon ordre.


Cependant, il existe en natif pleins d'outils, dont un qui manipule des fichiers, et entre autre leurs attributs

File.SetAttributes(OpenFileDialog1.FileName, FileAttributes.Hidden Or FileAttributes.System)



PS j'ai édité ton message pour corriger ta coloration syntaxique, explications ici

Messages postés
6
Date d'inscription
samedi 7 novembre 2015
Statut
Membre
Dernière intervention
19 décembre 2015

Merci beaucoup ton commentaire m'a vraiment bien aidé, mais je fais maintenant face à un autre problème de débutant ^^'
J'ai donc créé un premier bouton afin de cacher un fichier désigné, ce qui a marché, et j'ai fait un second bouton pour "Décacher" ce fichier désigné. Mais le problème, c'est que je sais pas comment sauvegarder le chemin du fichier du premier bouton !
Peux-tu m'aider ? Merci!
Messages postés
7241
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
28 janvier 2021
606
Bonjour,

Tu mets ton chemin dans une variable et tu te sers de MySettings pour sauvegarder ta variable:

https://msdn.microsoft.com/fr-fr/library/ms379611(v=vs.80).aspx
Messages postés
6
Date d'inscription
samedi 7 novembre 2015
Statut
Membre
Dernière intervention
19 décembre 2015

Bonjour,
Merci beaucoup mais le problème c'est que ce chemin peut changer ! Il faudrait faire une variable qui sauvegarde automatiquement(ou par un bouton) le chemin choisi !
Merci !
Messages postés
7241
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
28 janvier 2021
606
C'est le but de la variable (comme son nom l'indique).
Tu n'as pas lu le site. Si tu l'avais lu, tu saurais que ta variable est mémorisée dans un fichier à la fermeture de l'application. Et est restitué a son ouverture.
Tu peux aussi avoir plusieurs variables si tu as plusieurs chemins à sauvegarder.
Messages postés
7241
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
28 janvier 2021
606
Encore un peu de lecture sur les variables:

https://plasserre.developpez.com/cours/vb-net/?page=langage-vb2

Il faut passer par là pour progresser. Faire des copier-coller dépanne sur le moment, mais tu as vite fait d'être bloqué par la suite
Messages postés
6
Date d'inscription
samedi 7 novembre 2015
Statut
Membre
Dernière intervention
19 décembre 2015
>
Messages postés
7241
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
28 janvier 2021

Mais je t'avoue ne pas comprendre ; faire en sorte que le chemin soit sauvegarder à la prochaine ouverture je l'avais déjà appris avant, mais je voudrais que l'utilisateur appuie sur un bouton qui active le code que j'ai mis sur le topic, mais il faut qu'il sauvegarde le .FileName ! Est-ce que je peut faire une variable avec .FileName comme donnée ?
Messages postés
6
Date d'inscription
samedi 7 novembre 2015
Statut
Membre
Dernière intervention
19 décembre 2015

Ah excuse moi j'ai répondu directement à ton message et j'ai oublié de lire ton site ...
Merci beaucoup !
Messages postés
7241
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
28 janvier 2021
606
Voilà un exemple avec un fichier image:

 Private Sub cmdopen_Click(sender As System.Object, e As System.EventArgs) Handles cmdopen.Click
         Dim cheminsource As String
        Dim open_file As New OpenFileDialog
        With open_file
            .Filter = "Fichiers image| *.bmp;*.jpg;*.gif;*.wmf;*.tif;*.png"
            Try
                If .ShowDialog() = DialogResult.OK Then
                    cheminsource = .FileName
                    Picsource.Image = Image.FromFile(cheminsource)
                Else
                    MessageBox.Show("Opération annulée par l'utilisateur!", "Ouverture fichier", MessageBoxButtons.OK, MessageBoxIcon.Information)
                End If
            Catch ex As Exception
                MsgBox(ex.Message, vbCritical, "Fichier image")
            End Try
            .Dispose()
        End With
    End Sub


Il te suffit de suivre les indications du site pour mettre ta variable cheminsource dans My.Settings
Messages postés
6
Date d'inscription
samedi 7 novembre 2015
Statut
Membre
Dernière intervention
19 décembre 2015

Merci beaucoup j'ai réussi exactement ce que je voulais faire grâce à toi !
Bonne journée ;)