[C#] Path, nom de fichiers et string

scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017 - 21 sept. 2004 à 17:45
cs_nosliw Messages postés 1 Date d'inscription lundi 3 août 2009 Statut Membre Dernière intervention 16 novembre 2009 - 16 nov. 2009 à 16:29
Si on regarde dans le HKLM\Run par exemple, on trouve la liste des programmes qui se lancent au démarrage.
Le problème C le non standard des formats proposés.
Exemples :
c:\program files\MyFolder\Myfile.exe args
"c:\program files\MyFolder\Myfile.exe"
"c:\program files\MyFolder\Myfile.exe" "args"
"c:\program files\MyFolder\Myfile.exe" /arg

Si on prend la 1ere ligne, comment savoir si le fichier est
c:\program files\MyFolder\Myfile.exe
et non pas
c:\program files\MyFolder\Myfile.exe args
ou
c:\program

Sans bien sur, tester sur l'extension .EXE finale.

Any idea?
----------------------------
C++ forever
C# amateur

4 réponses

TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 23
21 sept. 2004 à 21:00
Extension + antislash + espace

Tu regardes ce qui est seulement après le dernier antislash tu découpe le morceau en fonction des espaces.

Le premier element est le fichier les autres les arguments

::|The S@ib|::
MVP C#.NET
0
HEVs Messages postés 6 Date d'inscription lundi 13 janvier 2003 Statut Membre Dernière intervention 26 juillet 2010
15 sept. 2008 à 11:35
Pourquoi ré-inventer la roue?

Path.GetDirectoryName(path) -> donne le(s) répertoire(s)
Path.GetFileName(path) -> le nom du fichier
Path.GetFileNameWithoutExtension(path) -> nom du fichier sans l'extention

---
Avec de la méthode et de la logique on peut tout aussi bien arriver à rien.
[www.synergie-consulting.com www.synergie-consulting.com]
0
scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017
17 sept. 2008 à 19:30
Je ne dirais qu'une chose : GG ;p

enfin si, autre point, j'ai vu trainer quelque part que si certains path étaient de la forme :
c?/toto/Myfile.exe
cela servait à contourner une restriction des API Windows avec un MAX_PATH à 256 caractères.
Il va falloir voir si ca fonctionne aussi.

Merci pour la roue ;p
++
Vince

----------------------------
C++ forever
C# amateur
0
cs_nosliw Messages postés 1 Date d'inscription lundi 3 août 2009 Statut Membre Dernière intervention 16 novembre 2009
16 nov. 2009 à 16:29
0
Rejoignez-nous