Slt,
La question est ds le titre.
Par exemple, si je veux copier le fichier "toto.txt" dans le dossier temporaire de Windows XP, via l'invite de commande, je vais taper :
Comment faire la même chose en VB.NET svp ?Code:copy toto.txt %temp%
Version imprimable
Slt,
La question est ds le titre.
Par exemple, si je veux copier le fichier "toto.txt" dans le dossier temporaire de Windows XP, via l'invite de commande, je vais taper :
Comment faire la même chose en VB.NET svp ?Code:copy toto.txt %temp%
bon c'est du C# mais les classes sont les mêmesCode:
1
2
3
4
5 System.Collections.IDictionary environmentVariables; environmentVariables = Environment.GetEnvironmentVariables(EnvironmentVariableTarget.User); MessageBox.Show(environmentVariables["TEMP"].ToString());
je continue mes recherches et pour une fois ça va assez vite... bizard :)
Bon, je boque qd m, faut pas rever ;)
Pour la copie de fichier, j'ai trouvé ça qui fonctionne :
Maintenant, reste à remplacer D: par le chemin du dossier temporaire de windows. Pour cela je crois avoir trouvé la commande qui convient, Environment.GetEnvironmentVariable("temp"), mais je n'arrive pas à l'utiliser et je sais m pas comment verifier si la valeur est correcte. Le lecteur est-il pris en compte ? Faut-il ajouter qqc ds les "Imports" ?Code:File.Copy("C:\toto.txt", "D:\totocopy.txt")
Pour commencer, je pense qu'il faut l'utiliser comme ci-dessous mais une petite confirmation ne me fera pas de mal ;) Je suis debutant alors bon... je ne maitrise pas grand chose, y compris les déclarations.
Code:Dim chemin_temp As String = Environment.GetEnvironmentVariable("temp")
ton code :
marche très bien !Code:Dim chemin_temp As String = Environment.GetEnvironmentVariable("temp")
Merci The_badger_man ! les choses avancent.
J'ai modifié ton code comme cela car VB express 2005 n'aimait pas :
Effectivement, une boite de dialogue s'ouvre en affichant le chemin complet. Donc pour ça c règlé.Code:MessageBox.Show(chemin_temp.ToString())
Reste toujours à exploiter la valeur. Si je fais ce qui suit, ça ne fonctionne pas :
VB Express 2005 rapporte l'erreur suivante :Code:
1
2
3
4
5
6
7
8
9 Public Class Dialog1 Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click Me.DialogResult = System.Windows.Forms.DialogResult.OK Dim chemin_temp As String = Environment.GetEnvironmentVariable("temp") ' MessageBox.Show(chemin_temp.ToString()) File.Copy("C:\toto.txt", "chemin_temp\totocopy.txt") Me.Close() End Sub
Une exception de première chance de type 'System.IO.DirectoryNotFoundException' s'est produite dans mscorlib.dll
Salut ASPIC ! :)
ça va depuis la dernière fois ? je m'y remets tu vois ;) et cette fois je voudrais en faire + en VB.NET
Salut lol, et oui je vais bien merci ^^ SInon quelle grosse erreur ai je vu dans ton code !!
Voila !! as tu compris ton erreur ?Code:
1
2
3
4
5
6
7 Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click Me.DialogResult = System.Windows.Forms.DialogResult.OK Dim chemin_temp As String = Environment.GetEnvironmentVariable("temp") ' MessageBox.Show(chemin_temp.ToString()) File.Copy("C:\toto.txt", chemin_temp & "\totocopy.txt") Me.Close() End Sub
Merci ASPIC, t'es trop fort ! :king:
Mettre un & apres une variable et non un \ et le reste... ok j'ai compris.
Par contre, j'ai toujours les erreurs suivantes, qui se repètent plusieurs fois pour certaines, ds VB 2005 bien que j'obtienne ce que je veux sans message d'erreur apparant durant l'execution du déboguage. c peut-etre pas tres clair là ;) disont qu'il semblerait que seul VB 2005 rapporte des erreurs et pourtant ça marche.
- Une exception de première chance de type 'System.IO.FileNotFoundException' s'est produite dans Microsoft.VisualBasic.dll (3 erreurs de ce type)
- Une exception de première chance de type 'System.IO.DirectoryNotFoundException' s'est produite dans mscorlib.dll (1 erreur de ce type)
- Une exception de première chance de type 'System.NotSupportedException' s'est produite dans mscorlib.dll (1 erreur de ce type)
- Une exception de première chance de type 'System.IO.DirectoryNotFoundException' s'est produite dans mscorlib.dll (7 erreurs de ce type)
Non ta variable etait entre guillement, elle etait donc considérée comme une chaine de caractère et non comme une variable ! Le signe & sert à concatener (mettre deux chaines bout à tout) ton path.Citation:
Envoyé par arnomedia
Sinon j'ai pas compris tes histoires d'erreurs, soit plus précis ;)
tu as répondu trop tôt ;) j'étais en train d'éditer mon message précédant.
Sinon cette fois, je pense avoir bien compris, merci. J'aime bien tes explications, elles sont clairs et précises.
Ces erreurs interviennent lors du debogage mais n'influent pas sur ton programme c'est ca ?Citation:
Envoyé par arnomedia
Sinon tant mieux si t'aimes bien mes réponses :mouarf:
c'est exactement ça.
Dans ce cas la, cela veut dire qu'il y a des erreurs dans ton code mais c'est pas grave pour le bon déroulement de ton programme mais c'est mieux de les corriger.
Au vu des exeptions, c'est des erreurs de chemin d'accès de fichiers et de dossiers.
Pour y remédier, tu as dûs mettre des try/catch dans ton code. Mets un point d'arret à chaque "Catch ex as Exeption" et tu verras quand le programme va planter "implicitement".
Voila bon debuggage ! :king:
là par contre, j'ai pas tout compris ;)
J'en suis qu'au debut du programme et ce que j'ai mis ds le post est le programme complet. Ce sont des lignes de codes pour tester la manip en fait.
Je n'ai pas fait de VB.NET depuis la dernière fois et "try/catch" et "Catch ex as Exeption", je ne sais m pas à quoi ça correspond, désolé.
Bon c'est pas très grave ces erreurs si cela ne te nuit pas.
Tu mets ton point d'arret sur la ligne du catch. Si tu ne sais pas mettre de point d'arret alors oublit cela car ca va etre trop dur pour toi...Code:
1
2
3
4
5 Try 'ton code ici Catch ex as exception 'intercepte l'erreur ici End Try
j'ai pas encore le niveau là. On verra ça une autre fois.
Je vais créer un autre post pour apprendre une autre manip similaire à MS-DOS
IF EXIST "C:\machin.txt" COPY C:\machin.txt D:
Pour ce post, c bon. Je tag résolu