Page 2 of 2 PrimeiroPrimeiro 12
Resultados 11 a 17 de 17
  1. #11
    Membro embreve's Avatar

    Data de Ingresso
    Mar 2023
    Posts
    94
    Thanks Thanks Given 
    156
    Thanks Thanks Received 
    9
    Thanked in
    8 Posts
    Mentioned
    4 Post(s)
    País
    Brazil
    Citação Originally Posted by Ravoc Ver Post
    Que estranho, faça o seguinte, me encaminhe o script aqui no tópico para analisarmos ele completamente, creio eu que você utilizando OGOCX LUA?
    Não! Estou trabalhando com Plugin. 99.60T.

    strcpy_s(this->PatentStruct[this->_Count].NamePatent, sizeof(this->PatentStruct[this->_Count].NamePatent), (Section.Rows[i].GetStringPtr(2)));

    void cPatent::HandlePatentCommand(int aIndex)
    {
    int RankIndex = this->GetRankIndex(aIndex);


    if (RankIndex == -1)
    {
    Function.MsgUser(aIndex, 1, "| Você não possui uma Patent.");
    return;
    }


    CUSTOM_RANKUSER_DATA CurrentPatent = this->PatentStruct[RankIndex];


    bool isMaxPatent = (CurrentPatent.Max == -1);


    if (isMaxPatent)
    {
    Function.MsgUser(aIndex, 1, "| Patent Atual: %s", CurrentPatent.NamePatent);
    Function.MsgUser(aIndex, 1, "| Você já atingiu a Patent máxima.", CurrentPatent.NamePatent);
    }
    else
    {
    CUSTOM_RANKUSER_DATA nextPatent = this->PatentStruct[RankIndex + 1];
    int PointsNeeded = nextPatent.Min - Custom[aIndex].Patent;


    Function.MsgUser(aIndex, 1, "| Patent Atual: %s", CurrentPatent.NamePatent);


    Function.MsgUser(aIndex, 1, "| Próxima Patent: %s", nextPatent.NamePatent);


    Function.MsgUser(aIndex, 1, "| Pontos Necessários: %d.", PointsNeeded);
    }
    }

  2. #12
    Developer C++ Ravoc's Avatar


    Data de Ingresso
    Aug 2022
    Posts
    46
    Thanks Thanks Given 
    81
    Thanks Thanks Received 
    69
    Thanked in
    20 Posts
    Mentioned
    2 Post(s)
    Humor
    Aggressive
    País
    France
    Agora, quando você processar uma string como "Diamante I", ela será copiada inteira, incluindo o espaço e o "I". Além disso, se algo der errado com a string de origem, o código não quebra e coloca um valor padrão.


    Código:
    const char* sourceString = Section.Rows[i].GetStringPtr(2);
    
    if (sourceString != nullptr && strlen(sourceString) > 0) {
        strncpy_s(this->PatentStruct[this->_Count].NamePatent, 
                  sizeof(this->PatentStruct[this->_Count].NamePatent), 
                  sourceString, 
                  _TRUNCATE);
    } else {
        strcpy_s(this->PatentStruct[this->_Count].NamePatent, 
                 sizeof(this->PatentStruct[this->_Count].NamePatent), 
                 "Desconhecida");
    }
    
    
    void cPatent::HandlePatentCommand(int aIndex)
    {
        int RankIndex = this->GetRankIndex(aIndex);
    
    
        if (RankIndex == -1)
        {
            Function.MsgUser(aIndex, 1, "| Você não possui uma Patent.");
            return;
        }
    
    
        CUSTOM_RANKUSER_DATA CurrentPatent = this->PatentStruct[RankIndex];
    
    
        bool isMaxPatent = (CurrentPatent.Max == -1);
    
    
        if (isMaxPatent)
        {
            Function.MsgUser(aIndex, 1, "| Patent Atual: %s", CurrentPatent.NamePatent);
            Function.MsgUser(aIndex, 1, "| Você já atingiu a Patent máxima.");
        }
        else
        {
            CUSTOM_RANKUSER_DATA nextPatent = this->PatentStruct[RankIndex + 1];
            int PointsNeeded = nextPatent.Min - Custom[aIndex].Patent;
    
    
            Function.MsgUser(aIndex, 1, "| Patent Atual: %s", CurrentPatent.NamePatent);
            Function.MsgUser(aIndex, 1, "| Próxima Patent: %s", nextPatent.NamePatent);
            Function.MsgUser(aIndex, 1, "| Pontos Necessários: %d.", PointsNeeded);
        }
    }

  3. The Following User Says Thank You to Ravoc For This Useful Post:


  4. #13
    Membro embreve's Avatar

    Data de Ingresso
    Mar 2023
    Posts
    94
    Thanks Thanks Given 
    156
    Thanks Thanks Received 
    9
    Thanked in
    8 Posts
    Mentioned
    4 Post(s)
    País
    Brazil
    Citação Originally Posted by Ravoc Ver Post
    Agora, quando você processar uma string como "Diamante I", ela será copiada inteira, incluindo o espaço e o "I". Além disso, se algo der errado com a string de origem, o código não quebra e coloca um valor padrão.


    Código:
    const char* sourceString = Section.Rows[i].GetStringPtr(2);
    
    if (sourceString != nullptr && strlen(sourceString) > 0) {
        strncpy_s(this->PatentStruct[this->_Count].NamePatent, 
                  sizeof(this->PatentStruct[this->_Count].NamePatent), 
                  sourceString, 
                  _TRUNCATE);
    } else {
        strcpy_s(this->PatentStruct[this->_Count].NamePatent, 
                 sizeof(this->PatentStruct[this->_Count].NamePatent), 
                 "Desconhecida");
    }
    
    
    void cPatent::HandlePatentCommand(int aIndex)
    {
        int RankIndex = this->GetRankIndex(aIndex);
    
    
        if (RankIndex == -1)
        {
            Function.MsgUser(aIndex, 1, "| Você não possui uma Patent.");
            return;
        }
    
    
        CUSTOM_RANKUSER_DATA CurrentPatent = this->PatentStruct[RankIndex];
    
    
        bool isMaxPatent = (CurrentPatent.Max == -1);
    
    
        if (isMaxPatent)
        {
            Function.MsgUser(aIndex, 1, "| Patent Atual: %s", CurrentPatent.NamePatent);
            Function.MsgUser(aIndex, 1, "| Você já atingiu a Patent máxima.");
        }
        else
        {
            CUSTOM_RANKUSER_DATA nextPatent = this->PatentStruct[RankIndex + 1];
            int PointsNeeded = nextPatent.Min - Custom[aIndex].Patent;
    
    
            Function.MsgUser(aIndex, 1, "| Patent Atual: %s", CurrentPatent.NamePatent);
            Function.MsgUser(aIndex, 1, "| Próxima Patent: %s", nextPatent.NamePatent);
            Function.MsgUser(aIndex, 1, "| Pontos Necessários: %d.", PointsNeeded);
        }
    }
    Muito obrigado pela sua contribuição! Assim que eu chegar do trabalho irei testar e retornar o feedback.

    1 32 minutes:------- Atualizado -------

    Citação Originally Posted by Ravoc Ver Post
    Agora, quando você processar uma string como "Diamante I", ela será copiada inteira, incluindo o espaço e o "I". Além disso, se algo der errado com a string de origem, o código não quebra e coloca um valor padrão.


    Código:
    const char* sourceString = Section.Rows[i].GetStringPtr(2);
    
    if (sourceString != nullptr && strlen(sourceString) > 0) {
        strncpy_s(this->PatentStruct[this->_Count].NamePatent, 
                  sizeof(this->PatentStruct[this->_Count].NamePatent), 
                  sourceString, 
                  _TRUNCATE);
    } else {
        strcpy_s(this->PatentStruct[this->_Count].NamePatent, 
                 sizeof(this->PatentStruct[this->_Count].NamePatent), 
                 "Desconhecida");
    }
    
    
    void cPatent::HandlePatentCommand(int aIndex)
    {
        int RankIndex = this->GetRankIndex(aIndex);
    
    
        if (RankIndex == -1)
        {
            Function.MsgUser(aIndex, 1, "| Você não possui uma Patent.");
            return;
        }
    
    
        CUSTOM_RANKUSER_DATA CurrentPatent = this->PatentStruct[RankIndex];
    
    
        bool isMaxPatent = (CurrentPatent.Max == -1);
    
    
        if (isMaxPatent)
        {
            Function.MsgUser(aIndex, 1, "| Patent Atual: %s", CurrentPatent.NamePatent);
            Function.MsgUser(aIndex, 1, "| Você já atingiu a Patent máxima.");
        }
        else
        {
            CUSTOM_RANKUSER_DATA nextPatent = this->PatentStruct[RankIndex + 1];
            int PointsNeeded = nextPatent.Min - Custom[aIndex].Patent;
    
    
            Function.MsgUser(aIndex, 1, "| Patent Atual: %s", CurrentPatent.NamePatent);
            Function.MsgUser(aIndex, 1, "| Próxima Patent: %s", nextPatent.NamePatent);
            Function.MsgUser(aIndex, 1, "| Pontos Necessários: %d.", PointsNeeded);
        }
    }
    Ravoc, o problema persiste! Que estranho... Mais eu te agradeço pelo seu tempo de ensino! Vou continuar quebrando a cabeça... Preciso corrigir isso.
    Last edited by embreve; 11-18-2024 at 09:30 PM.

  5. The Following User Says Thank You to embreve For This Useful Post:


  6. #14
    Developer C++ Ravoc's Avatar


    Data de Ingresso
    Aug 2022
    Posts
    46
    Thanks Thanks Given 
    81
    Thanks Thanks Received 
    69
    Thanked in
    20 Posts
    Mentioned
    2 Post(s)
    Humor
    Aggressive
    País
    France
    Vish, consegue preparar um log mais detalhado?

  7. #15
    Membro embreve's Avatar

    Data de Ingresso
    Mar 2023
    Posts
    94
    Thanks Thanks Given 
    156
    Thanks Thanks Received 
    9
    Thanked in
    8 Posts
    Mentioned
    4 Post(s)
    País
    Brazil
    Citação Originally Posted by Ravoc Ver Post
    Vish, consegue preparar um log mais detalhado?
    Boa tarde, Ravoc.
    Estou apenas me aventurando em C++, como eu faria esse Log para lhe enviar?

  8. #16
    Developer C++ Ravoc's Avatar


    Data de Ingresso
    Aug 2022
    Posts
    46
    Thanks Thanks Given 
    81
    Thanks Thanks Received 
    69
    Thanked in
    20 Posts
    Mentioned
    2 Post(s)
    Humor
    Aggressive
    País
    France
    Citação Originally Posted by embreve Ver Post
    Boa tarde, Ravoc.
    Estou apenas me aventurando em C++, como eu faria esse Log para lhe enviar?
    Poste algum print onde o erro é executado, pois é estranho com a solução acima era pra ter anulado os erros, caso houvesse erro ele jogava um valor padrão para testes

  9. #17
    Membro embreve's Avatar

    Data de Ingresso
    Mar 2023
    Posts
    94
    Thanks Thanks Given 
    156
    Thanks Thanks Received 
    9
    Thanked in
    8 Posts
    Mentioned
    4 Post(s)
    País
    Brazil
    Citação Originally Posted by Ravoc Ver Post
    Poste algum print onde o erro é executado, pois é estranho com a solução acima era pra ter anulado os erros, caso houvesse erro ele jogava um valor padrão para testes
    Boa tarde, Ravoc.
    Meu código não apresenta erro algum. Apenas não copia o espaço e o restante da string.

    Abraço.

Page 2 of 2 PrimeiroPrimeiro 12

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • You may not post Resposta(s)
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •