Limiter dans le nombre de caractère dans un fichier ini

tof72 Messages postés 33 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 18 juillet 2005 - 11 juin 2004 à 10:23
tof72 Messages postés 33 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 18 juillet 2005 - 11 juin 2004 à 16:09
bonjour

je suis limiter a 36 caractère quand je vais cherché des information dans un fichier ini.
Comment avoir plus de caractère.

Voici mon code

Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long

ini=c:\vb6\transfert.ini

ret = String(255, 0)
nc = GetPrivateProfileString("chemin", "source", "default", ret, 255, ini)
If nc <> 0 Then ret = Left$(ret, nc)
orig = ret

6 réponses

crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
11 juin 2004 à 10:32
Je ne comprend pas ton pb de limitation à 36 caractères !!
D'après ton code tu es effectivement limité, mais à 255 caractères !!!

Christophe R.
0
tof72 Messages postés 33 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 18 juillet 2005
11 juin 2004 à 11:07
Voici le reste du code qui lit le fichier ini
Celon l'ordre des variable j'ai des problèmes pour avoir la totalité de la chaine de caractère.

les variables sont déclaré en string

ret = String(255, 0)
nc = GetPrivateProfileString("chemin", "destination", "default", ret, 255, ini)
If nc <> 0 Then ret = Left$(ret, nc)
dest = ret

nc = GetPrivateProfileString("chemin", "source", "default", ret, 255, ini)
If nc <> 0 Then ret = Left$(ret, nc)
orig = ret

nc = GetPrivateProfileString("fichier", "chemin", "default", ret, 255, ini)
If nc <> 0 Then ret = Left$(ret, nc)
fichier = ret

nc = GetPrivateProfileString("fichier", "nom", "default", ret, 255, ini)
If nc <> 0 Then ret = Left$(ret, nc)
nomfichier = ret

voici la structure du fichier ini

[chemin]
source=\\structure\users\_xchange\_FicPayedestination=\users\_xchange\DOSSIERS.ISA\_IsaPaye
[fichier]
nom=transfert.txt
chemin=\\structure\users\_xchange\_FicPaye\
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
11 juin 2004 à 11:10
Je te conseille de refaire un "ret = String(255, 0)" juste avant chaque appel à l'API GetPrivateProfileString(...)

Christophe R.
0
tof72 Messages postés 33 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 18 juillet 2005
11 juin 2004 à 11:30
ok sa marche

le 0 dans la ligne "ret = String(255,0)" signifie quoi?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
11 juin 2004 à 12:08
C'est le caractrère nul ! a ne pas confondre avec "", qui est une chaine vide ! A ne pas confondre !!
Pour un code plus parlant, tu peux rempalcer ce zéro par la constante vbNullChar

Christophe R.
0
tof72 Messages postés 33 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 18 juillet 2005
11 juin 2004 à 16:09
merci
0
Rejoignez-nous