Portal SAMP
[Ajuda] Problemas ao salvar e pegar dados - DOF2 - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Problemas ao salvar e pegar dados - DOF2 (/showthread.php?tid=2240)



Problemas ao salvar e pegar dados - DOF2 - zBL4CK - 28/03/2022

Bom pessoal eu estou tendo um problema na hora de pegar dados e tambem salvar com DOF2.

Bom toda vez que essa função é chamada:

Código PHP:
linha 5432: if(strcmp(DOF2::GetString(WhatsFile(playerid), "PlayerNum0"), "Nenhum"false)) 
aparece esse erro:
Citar:[debug] Run time error 4: "Array index out of bounds"
[debug]  Attempted to read/write array element at index 256 in array of size 256
[debug] AMX backtrace:
[debug] #0 00003518 in DOF2_ParseFile (file[]=@001968b4 "/Server/Log/Mensagens/zBL4CK_.ini", extraid=-1, bool:callback=false) at C:\Users\USER\Desktop\Paste\Arquivos\SA-MP\Servidor\server\pawno\include\DOF2.inc:1134
[debug] #1 000021c0 in DOF2_GetStringEx (file[]=@001968b4 "/Server/Log/Mensagens/zBL4CK_.ini", key[]=@001928a8 "PlayerNum0", result[]=@001d6470 "", size=128, tag[]=@001968b0 "") at C:\Users\USER\Desktop\Paste\Arquivos\SA-MP\Servidor\server\pawno\include\DOF2.inc:698
[debug] #2 0000205c in DOF2_GetString (file[]=@001968b4 "/Server/Log/Mensagens/zBL4CK_.ini", key[]=@001928a8 "PlayerNum0", tag[]=@001968b0 "") at C:\Users\USER\Desktop\Paste\Arquivos\SA-MP\Servidor\server\pawno\include\DOF2.inc:685
[debug] #3 000a84ac in public OnPlayerClickDynamicTextdraw (playerid=0, PlayerText:playertextid=234) at c:\Users\USER\Desktop\Server\filterscripts\Msg.pwn:5432

quando o player abre a textdraw ele gera o arquivo com o seguinte codigo:
Código PHP:
//topo da gm
stock WhatsFile(playerid) {
    new wppfile[54];
    format(wppfile54"/Server/Log/Mensagens/%s.ini"GetPlayerNameEx(playerid));
    return wppfile;
}
if(
playertextid == Menu[playerid][7]) { //botao msg
    if(!DOF2::FileExists(WhatsFile(playerid))) {
        new File:whats fopen(WhatsFile(playerid), io_write);
        new strfmt[55], fmt2[55], = -1;
        for(new i21; ++i) {
            for(new a21; ++a) { 
                if(== 0) {
                    ++b;
                    format(fmt255"NumeroP%d = Nenhum\nPlayerNum%d = Nenhum\n"bb); fwrite(whatsfmt2);  
                
}  
                format
(strfmt55"Num%dMsg%d = _\nHora%dMsg%d = _\nPlayer%dMsg%d = true\n"iaiaia); fwrite(whatsstrfmt);  
            
}
            if(== 20fclose(whats);
        }
    }


Bom eu ja to a bastante tempo tentando algumas formas de resolver isso mais nada da certo.


RE: Problemas ao salvar e pegar dados - DOF2 - zBL4CK - 29/03/2022

@Resolvido


Eu alterei o limite maximo de leitura da Include DOF2 por um valor maior.

Código PHP:
// The maximum number of entries which can be loaded into the cache.
#if !defined MAX_ENTRIES
    #define MAX_ENTRIES         (768)
#endif 


- deu certo? sim.
- recomendo? não... kk
 
mas enfim infelizmente foi a unica forma que encontrei.