GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: ApocKalipsS le 06 Février 2010, 18:08:37

Titre: Problème supression fichier.
Posté par: ApocKalipsS le 06 Février 2010, 18:08:37
Salut, j'ai un problème, j'ai créer une fonction pour rename un fichier et un joueur, voilà la fonction principale de ce que j'ai fait :

SetPlayerName(giveplayerid, tmp);
format(string, sizeof(string), "AdmCMD: %s(%i) a changé votre nom en %s", sendername, playerid, tmp);
SendClientMessage(giveplayerid, COLOR_DBLUE, string);
format(string, sizeof(string), "AdmCMD: Vous avez changé le nom de l'ID %i en %s", giveplayerid, tmp);
SendClientMessage(playerid, COLOR_DBLUE, string);
format(string, 256, "AdmWarning: %s a changé le nom de %s en %s.", sendername,giveplayer, tmp);
ABroadCast(COLOR_YELLOW,string,1);
new string1[156];
format(string, sizeof(string), "%s.ini", giveplayer);
format(string1, sizeof(string1), "%s.ini", tmp);
frename(string, string1);
fremove(string);


Pourtant, ça créer le nouveau fichier et ca ne supprime pas l'ancien...
Help !

Double post
Désolé du double post, mais j'ai un autre problème.
Voilà ma condition :
if(string == "" && string1 == "" && string2 == "")
Voilà l'erreur :
error 001: expected token: "-string end-", but found "-identifier-"
Que faire pour réglé ce problème ? Merci !
Titre: Re : Problème supression fichier.
Posté par: S!m le 06 Février 2010, 19:50:49
Salut,

si ce que tu veut c'est testé si un string est vide, utilise plutôt la macro isnull de Y_Less:

#define isnull(%0) (%0[0] == '\0 || (%0[1] == '\0' && %0[0] == '\1'))
qui s'utilise:

if(isnull(string) && isnull(string1) && isnull(string2))
++Sim++
Titre: Re : Problème supression fichier.
Posté par: ApocKalipsS le 06 Février 2010, 23:37:32
error 027: invalid character constant
 :blink
Titre: Re : Problème supression fichier.
Posté par: cristab le 06 Février 2010, 23:51:38
suffit d'ouvrire l'oeil

#define isnull(%0) (%0[0] == '\0' || (%0[1] == '\0' && %0[0] == '\1'))
Titre: Re : Problème supression fichier.
Posté par: ApocKalipsS le 11 Février 2010, 20:32:05
Ah oui, j'avais pas vu.
Un peu up pour ma première question, le frename du plugin de YSF ne marche pas, et donc je sais pas comment faire.
Titre: Re : Problème supression fichier.
Posté par: S!m le 11 Février 2010, 23:51:37
Salut,

bah tu peut faire une fonction en PAWN:

stock filerename(original[], newname[])
{
new ret = 0;
if(!fexist(newname))
{
new File:ofile, Float:nfile;
ofile = fopen(original, io_read);
if(ofile)
{
    nfile = fopen(newname, io_write)
    if(nfile)
    {
        new tmp[256];
        while(fread(ofile, tmp, sizeof(tmp)))
        {
            fwrite(nfile, tmp);
        }
        fclose(nfile);
        ret = 1;
    }
    fclose(ofile);
}
}
return ret;
}


ps. code fais rapidement et non-testé, il peut comporter certaines erreurs

++Sim++
Titre: Re : Problème supression fichier.
Posté par: ApocKalipsS le 13 Février 2010, 12:25:18
Merci, ça marche, mais pas totalement, ça créer le nouveau fichier mais ne supprime pas l'ancien...
J'ai fait un fremove(originale); mais ça ne marche pas.
Titre: Re : Problème supression fichier.
Posté par: ApocKalipsS le 15 Février 2010, 14:37:00
Up !
Titre: Re : Problème supression fichier.
Posté par: S!m le 15 Février 2010, 15:02:52
Salut,

j'ai déjà entendu un truc de ce genre, je crois que fremove n'enlève pas vraiment le fichier, il ne fait qu'effacer les données contenues dans le fichier...faudrait vérifier....

++Sim++
Titre: Re : Re : Problème supression fichier.
Posté par: BuBuNo le 15 Février 2010, 15:13:27
Salut,

j'ai déjà entendu un truc de ce genre, je crois que fremove n'enlève pas vraiment le fichier, il ne fait qu'effacer les données contenues dans le fichier...faudrait vérifier....

++Sim++

Ou sinon regarder dans le Dini car lui enleve tout car je l'utilise pour suprimer des course
Titre: Re : Re : Re : Problème supression fichier.
Posté par: S!m le 17 Février 2010, 04:05:35
Salut,

Salut,

j'ai déjà entendu un truc de ce genre, je crois que fremove n'enlève pas vraiment le fichier, il ne fait qu'effacer les données contenues dans le fichier...faudrait vérifier....

++Sim++

Ou sinon regarder dans le Dini car lui enleve tout car je l'utilise pour suprimer des course

dini ne fait que rediriger vers fremove...
essaie de regarder si tu donne le bon fichier (avec le bon dossier et tout)

++Sim++
Titre: Re : Problème supression fichier.
Posté par: ApocKalipsS le 17 Février 2010, 15:37:00
Aaaaa, le dossier, j'ai carrément loupé xD