Reduire le "C:\Program files" en "C:\program~1\

cs_letouriste Messages postés 4 Date d'inscription lundi 6 mai 2002 Statut Membre Dernière intervention 13 janvier 2009 - 6 mai 2002 à 01:26
cs_letouriste Messages postés 4 Date d'inscription lundi 6 mai 2002 Statut Membre Dernière intervention 13 janvier 2009 - 6 mai 2002 à 12:58
Salut,
je cherche le moyen pour reduire les nom de repertoire car sa pose un probléme pour la commande Shell(chemin) car il y à des espaces entre le program et files par ex. alors qu'il faudrai une chaine du type C:\program~1\
Sa existe un module ou ocx qui fait sa ?? merci ;)

2 réponses

Neo.balastik Messages postés 796 Date d'inscription jeudi 17 mai 2001 Statut Membre Dernière intervention 5 mai 2009 7
6 mai 2002 à 08:56
Salut,

Via un appel de l'API GetShortPathName :

Essaye ceci en le collant tel quel dans un formulaire:

Private Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" (ByVal lpszLongPath As String, ByVal lpszShortPath As String, ByVal lBuffer As Long) As Long

Public Function GetShortPath(strFileName As String) As String
Dim lngRes As Long, strPath As String
'Création d'un tampon
strPath = String$(165, 0)
'On récupère le chemin court
lngRes = GetShortPathName(strFileName, strPath, 164)
'On enlève tous les chr$(0) inutiles
GetShortPath = Left$(strPath, lngRes)
End Function

Private Sub Form_Load()
MsgBox GetShortPath("c:\Program Files")
End Sub

Tchao

NéoB
0
cs_letouriste Messages postés 4 Date d'inscription lundi 6 mai 2002 Statut Membre Dernière intervention 13 janvier 2009
6 mai 2002 à 12:58
Merci bcp sa marche trés bien ;)
0
Rejoignez-nous