Merhaba arkadaşlar,
Arkadaşlar bir çok kişinin metin2 karakter silinemez diyor, dediğini görünce biraz araştırma yaparak bu konuda paylaşım yapmak istedim. Metin2 karakteri silemezsin hatasını aşağıdaki işlemleri yaparak giderebilirsiniz.
Src aşağıdaki kısıma girip gerekli dosyayı açmalısınız.
Src/Server/db
ClientManagerPlayer.cpp açılır.
Bu kod bulunarak aşağıdaki kod ile değiştirilir.
Arkadaşlar bir çok kişinin metin2 karakter silinemez diyor, dediğini görünce biraz araştırma yaparak bu konuda paylaşım yapmak istedim. Metin2 karakteri silemezsin hatasını aşağıdaki işlemleri yaparak giderebilirsiniz.
Src aşağıdaki kısıma girip gerekli dosyayı açmalısınız.
Src/Server/db
ClientManagerPlayer.cpp açılır.
Kod:
char queryStr[QUERY_MAX_LEN];
snprintf(queryStr, sizeof(queryStr), "INSERT INTO player%s_deleted SELECT * FROM player%s WHERE id=%d",
GetTablePostfix(), GetTablePostfix(), pi->player_id);
std::auto_ptr<SQLMsg> pIns(CDBManager::instance().DirectQuery(queryStr));
if (pIns->Get()->uiAffectedRows == 0 || pIns->Get()->uiAffectedRows == (uint32_t)-1)
{
sys_log(0, "PLAYER_DELETE FAILED %u CANNOT INSERT TO player%s_deleted", dwPID, GetTablePostfix());
peer->EncodeHeader(HEADER_DG_PLAYER_DELETE_FAILED, pi->dwHandle, 1);
peer->EncodeBYTE(pi->account_index);
return;
}
Bu kod bulunarak aşağıdaki kod ile değiştirilir.
Kod:
char queryStr[QUERY_MAX_LEN];
snprintf(queryStr, sizeof(queryStr), "INSERT INTO player_deleted%s SELECT * FROM player%s WHERE id=%d",
GetTablePostfix(), GetTablePostfix(), pi->player_id);
std::auto_ptr<SQLMsg> pIns(CDBManager::instance().DirectQuery(queryStr));
if (pIns->Get()->uiAffectedRows == 0 || pIns->Get()->uiAffectedRows == (uint32_t)-1)
{
sys_log(0, "PLAYER_DELETE FAILED %u CANNOT INSERT TO player_deleted%s", dwPID, GetTablePostfix());
peer->EncodeHeader(HEADER_DG_PLAYER_DELETE_FAILED, pi->dwHandle, 1);
peer->EncodeBYTE(pi->account_index);
return;
}