[C#] Path, nom de fichiers et string

Signaler
Messages postés
714
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
19 janvier 2017
-
Messages postés
1
Date d'inscription
lundi 3 août 2009
Statut
Membre
Dernière intervention
16 novembre 2009
-
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
A voir également:

4 réponses

Messages postés
2368
Date d'inscription
mardi 17 avril 2001
Statut
Modérateur
Dernière intervention
26 décembre 2007
20
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
Messages postés
6
Date d'inscription
lundi 13 janvier 2003
Statut
Membre
Dernière intervention
26 juillet 2010

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]
Messages postés
714
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
19 janvier 2017

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
Messages postés
1
Date d'inscription
lundi 3 août 2009
Statut
Membre
Dernière intervention
16 novembre 2009