OVH Cloud OVH Cloud

Path d'un programme console

9 réponses
Avatar
Jérôme FONTAINE
Bonjour,

Sur une application windows pour connaitre le chemin d'accès du
programme on utilise application.startuppath.
Par contre je ne trouve pas pour un programme console.

Merci de vos lumieres

Jérôme

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com

9 réponses

Avatar
Zoury
Salut Jérôme ! :O)

Tu peux employer la classe Assembly comme ceci :
'***
Option Explicit On

Imports System.Reflection

Module Module1

Sub Main()

Console.WriteLine([Assembly].GetExecutingAssembly().Location)
Console.WriteLine()
Console.WriteLine("Appuyer sur Retour pour quitter...")
Console.ReadLine()

End Sub

End Module
'***

--
Cordialement
Yanick
MVP pour Visual Basic
"Jérôme FONTAINE" a écrit dans le message de
news:
Bonjour,

Sur une application windows pour connaitre le chemin d'accès du
programme on utilise application.startuppath.
Par contre je ne trouve pas pour un programme console.

Merci de vos lumieres

Jérôme

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com



Avatar
Fred
Dans son message
Zoury nous dit :

Bonjour,

Sur une application windows pour connaitre le chemin d'accès du
programme on utilise application.startuppath.
Par contre je ne trouve pas pour un programme console.

Merci de vos lumieres

Jérôme

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com





Salut Jérôme ! :O)

Tu peux employer la classe Assembly comme ceci :
'***
Option Explicit On

Imports System.Reflection

Module Module1

Sub Main()

Console.WriteLine([Assembly].GetExecutingAssembly().Location)
Console.WriteLine()
Console.WriteLine("Appuyer sur Retour pour quitter...")
Console.ReadLine()

End Sub

End Module
'***




Bonsoir,
Peut-être plus simple avec la classe System.Environment ?
Il y a les propriétés CommandLine et CurrentDirectory qui devraient faire
l'affaire.


--
Fred
Avatar
Fred
Dans son message
Fred nous dit :

Dans son message
Zoury nous dit :

Bonjour,

Sur une application windows pour connaitre le chemin d'accès du
programme on utilise application.startuppath.
Par contre je ne trouve pas pour un programme console.

Merci de vos lumieres

Jérôme

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com





Salut Jérôme ! :O)

Tu peux employer la classe Assembly comme ceci :
'***
Option Explicit On

Imports System.Reflection

Module Module1

Sub Main()

Console.WriteLine([Assembly].GetExecutingAssembly().Location)
Console.WriteLine()
Console.WriteLine("Appuyer sur Retour pour quitter...")
Console.ReadLine()

End Sub

End Module
'***




Bonsoir,
Peut-être plus simple avec la classe System.Environment ?
Il y a les propriétés CommandLine et CurrentDirectory qui devraient
faire l'affaire.




Non, CommandLine ne garantit pas la présence du chemin d'accès (MSDN
Library)
Donc CurrentDirectory.

--
Fred
Avatar
Fred
Dans son message
Zoury nous dit :

Bonjour,

Sur une application windows pour connaitre le chemin d'accès du
programme on utilise application.startuppath.
Par contre je ne trouve pas pour un programme console.

Merci de vos lumieres

Jérôme

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com





Salut Jérôme ! :O)

Tu peux employer la classe Assembly comme ceci :
'***
Option Explicit On

Imports System.Reflection

Module Module1

Sub Main()

Console.WriteLine([Assembly].GetExecutingAssembly().Location)
Console.WriteLine()
Console.WriteLine("Appuyer sur Retour pour quitter...")
Console.ReadLine()

End Sub

End Module
'***




Ne tenez pas compte de mes deux posts. Oula Il est temps que j'aille me
coucher moi :(

--
Fred
Avatar
Jérôme FONTAINE
Fred a exprimé avec précision :
les propriétés CommandLine et CurrentDirectory qui devraient faire l'affaire



Super c'est ce que je recherchais
Merci de votre aide a tous les deux

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com
Avatar
Fred
Dans son message
Jérôme FONTAINE nous dit :

Fred a exprimé avec précision :
les propriétés CommandLine et CurrentDirectory qui devraient faire
l'affaire





oui, oui, précis mais très mauvais

En fait non, CurrentDirectory, c'est le répertoire désigné comme "répertoire
de travail" quand on fait un raccourci.
Si tu lances ton programme se trouvant dans un répertoire X à partir d'un
répertoire Y, c'est Y qui sera retourné par CurrentDIrectory.

CommandLine aurait été mieux mais son comportement diffère suivant les
systèmes.


Super c'est ce que je recherchais
Merci de votre aide a tous les deux





--
Fred
Avatar
Zoury
> Peut-être plus simple avec la classe System.Environment ?



Tient, je l'avais oublié celle là. :O)
Elle m'apparait plus simple en effet car elle renvoit le répertoire
seulement alors que l'autre renvoit le répertoire et le nom du fichier .

--
Cordialement
Yanick
MVP pour Visual Basic
Avatar
Zoury
> En fait non, CurrentDirectory, c'est le répertoire désigné comme


"répertoire
de travail" quand on fait un raccourci.



Aaaah ! oui c'est vrai. merci pour le rappel.

--
Cordialement
Yanick
MVP pour Visual Basic
Avatar
Zoury
Bon juste pour bien démêler tout le monde.. :O)

En fait non, CurrentDirectory, c'est le répertoire désigné comme


"répertoire
de travail" quand on fait un raccourci.
Si tu lances ton programme se trouvant dans un répertoire X à partir d'un
répertoire Y, c'est Y qui sera retourné par CurrentDIrectory.



Le CurrentDirectory peut aussi être modifier par la fonction ChDir() :
'***
Console.WriteLine(Environment.CurrentDirectory)
ChDir("c:")
Console.WriteLine(Environment.CurrentDirectory)
Console.WriteLine()
Console.WriteLine("Appuyer sur Retour pour quitter...")
Console.ReadLine()
'***

Ça n'est donc pas fiable pour déterminer le chemin d'accès à l'application.


CommandLine aurait été mieux mais son comportement diffère suivant les
systèmes.



CommandLine quant elle retourne la ligne de commande employé pour
l'ouverture du programme avec les paramètres passés à l'application s'il y a
lieu.

--
Cordialement
Yanick
MVP pour Visual Basic