Salut
j'ai une erreur dont je ne comprend pas du tout le sens

j' extrait des informations a partir d'un .INI grâce a ces procédure

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Declare Function GetPrivateProfileString Lib "Kernel32" Alias "GetPrivateProfileStringA" _
    (ByVal lpApplicationName As String, _
    ByVal lpKeyName As String, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Short, _
    ByVal lpFileName As String) As Integer
 
    Function Get_Private_Profile_String(ByVal cAppName As String, _
        ByVal cKeyName As String, ByVal cKeyDefault As String, ByRef cKeyValue As String, _
            ByVal cProfName As String) As Integer
        ' LIRE UNE STRING
        ' Parametres:
        ' cAppName Correspond à [Rubrique]
        ' cKeyName Nom de l'entrée, de la clé
        ' cKeyDefault Valeur par défaut de la chaîne cherchée
        ' cKeyValue Valeur lue en face de l'Entrée ou cKeyDefault si l'Entrée est vide
        ' cProfName Nom du Fichier "INI" Privé
        ' Sortie:
        ' Valeur lue dans cKeyValue
        ' La fonction retourne le nombre de caractères dans cKeyValue 
 
        Dim iReaded As Integer
        Const sLongueur As Short = 255
        If cKeyName = "" Then
            cKeyValue = Space$(1025)
            iReaded = GetPrivateProfileString(cAppName, "", "", cKeyValue, 1024, cProfName)
        Else
            cKeyValue = Space$(255)
            iReaded = GetPrivateProfileString(cAppName, cKeyName, cKeyDefault, cKeyValue, sLongueur, cProfName)
        End If
        cKeyValue = Trim$(cKeyValue)
        'Enlever le dernier caractère?
        'If Len(cKeyValue) <> 0 Then
        ' cKeyValue = Mid$(cKeyValue, 1, Len(cKeyValue) - 1)
        'End If
        Get_Private_Profile_String = iReaded
    End Function
et j' appelle la deuxième comme ceci

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
' -- EXTRACTION DONNÉE .INI --
        Dim cRubrique As String = "MAIN"    'Nom de la rubrique
 
        Dim cKey As String = "CheminFichierXML_EPI"                'Nom de la clé
 
        Dim cRepertoire As String = Space(255)                  'Variable récupérant la string  
 
        Dim cIniFile As String = Application.StartupPath & "\info.ini"         'Nom du fichier Ini 
 
        Dim istat As String
 
        'Appel de la fonction
        istat = Get_Private_Profile_String(cRubrique, cKey, "", cRepertoire, cIniFile)
        CheminFichierXML_EPI = cRepertoire
tout ca m'extrait correctement l'info qui est

"C:\Documents and Settings\stageinfo\Mes documents\Visual Studio 2005\Projects\EPI\EPI\bin\Debug\XML_EPI"

c'est après que ca ce corse

Code : Sélectionner tout - Visualiser dans une fenêtre à part
nbfiles = Directory.GetFiles(CheminFichierXML_EPI).Length()
et ca m'affiche

Caractères non conformes dans le chemin d'accès.
alors que si je remplace la variable par ce qu'elle contient ca fonctionne


donc je ne comprend pas pourquoi !

quelqu'un voit ce qu'il faut faire ??

Merci.