La premiere partie du script recherche la ligne où se trouve le texte et donne en résultat un numero de ligne utilisé pour la 2eme partie, meme si je rentre le numéro de ligne manuellement j'ai la meme erreur.
Code : Tout sélectionner
#Include <File.au3>
$pseudo = InputBox("Script By Nunurs","Quel est votre pseudo?"&@CRLF&@CRLF&"Ne pas utiliser de caractere speciaux","","")
$NomFichier = "server.cfg" ; le nom du fichier a parcourir
$ChaineRecherchee = "seta sv_hostname" ; le nom de l'utilisateur en cours
$Resultat = "" ; le début de la popup en cas de résultat
$Trouve = False ; le switch qui indiquera si on trouve
$i=1 ; le compteur de lignes
$Fichier = FileOpen(@ScriptDir & "\players2\" & $NomFichier, 0) ; on ouvre le fichier
If $Fichier = -1 Then ; Vérification que le fichier est correctement ouvert
MsgBox(0, "Erreur", "Impossible d'ouvrir le fichier")
Exit
EndIf
While 1 ; Et on parcourt le fichier...
$ligne = FileReadLine($Fichier) ; ... en lisant chaque ligne...
If @error = -1 Then ; ... jusqu'a la fin...
ExitLoop
Else
If StringInStr($ligne,$ChaineRecherchee,2) <> 0 Then ; Si on trouve la chaine a chercher dans la ligne
$Resultat = $Resultat & $i ; ... on l'inscrit dans les résultats ...
$Trouve = True ;... et on précise qu'on a trouvé
EndIf
$i = $i + 1 ; On incrémente le compteur de ligne
EndIf
Wend
FileClose($NomFichier) ; on n'oublie pas de fermer le fichier
if $Trouve = True Then; Si on a trouvé...
Else ; ... sinon ...
MsgBox(0,"Résultat", chr(34) & $ChaineRecherchee & chr(34) & " n'a pas été trouvé")
EndIf
FileClose(@ScriptDir & "\players2\server.cfg")
_FileWriteToLine(@ScriptDir & "\players2\server.cfg", $Resultat, 'seta sv_hostname "MW3 de ' & $pseudo & '"',1)
if @error Then
MsgBox(4096,"Error", @error)
EndIf
Si vous avez une idee de réponse ca m'aiderai grandement.
Cordialement.
Nunurs



