📄 characterview.cpp
字号:
}break;
default:
{
wchar_name w_Allname;
memset(&w_Allname, 0, sizeof( w_Allname) );
//罐酒坷绰 磊丰屈狼 蔼捞 char牢啊 wchar牢啊甫 舅酒郴搁. 歹宽 祈茄单.//kyo
ret = g_pDb->OpenRecord(query, &w_Allname, 1, (BYTE)DRAGON_DB[ m_nCurDbIndex ]);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name1,-1, m_szAllCharName.name1, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name2,-1, m_szAllCharName.name2, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name3,-1, m_szAllCharName.name3, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name4,-1, m_szAllCharName.name4, 100, NULL, NULL);
}break;
}
// 021118 怕惫滚傈阑 困茄 蜡聪内靛拳 函脚..
//for thailand<<
/*
wchar_name w_Allname;
memset(&w_Allname, 0, sizeof( w_Allname) );
//罐酒坷绰 磊丰屈狼 蔼捞 char牢啊 wchar牢啊甫 舅酒郴搁. 歹宽 祈茄单.//kyo
ret = g_pDb->OpenRecord(query, &w_Allname, 1, (BYTE)DRAGON_DB[ m_nCurDbIndex ]);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name1,-1, m_szAllCharName.name1, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name2,-1, m_szAllCharName.name2, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name3,-1, m_szAllCharName.name3, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name4,-1, m_szAllCharName.name4, 100, NULL, NULL);
*/
//for thailand>>
if(ret < 0) return FALSE;
else if(!ret)
{
MessageBox("No Result! : RM_QUERY_ALL_CHARACTER");
return FALSE;
}
//021115 怕惫俊辑 某腐磐捞抚瘤况瘤绰 巩力 锭巩俊.
if( 16 == ::GetPrivateProfileInt("Admin","idCheck",-10,g_szSetupPath) )
{
MessageBoxPrintf( IDOK, "name1=%s,name2=%s,name3=%s,name4=%s", m_szAllCharName.name1,
m_szAllCharName.name2,m_szAllCharName.name3,m_szAllCharName.name4);
}
if(!strcmp(m_szAllCharName.name1,"")) sprintf(m_szAllCharName.name1,"<NULL>");
else if(!strcmp(m_szAllCharName.name2,"")) sprintf(m_szAllCharName.name2,"<NULL>");
else if(!strcmp(m_szAllCharName.name3,"")) sprintf(m_szAllCharName.name3,"<NULL>");
else if(!strcmp(m_szAllCharName.name4,"")) sprintf(m_szAllCharName.name4,"<NULL>");
//kyo 020902
switch( g_iNation )
{
case NATION_KOREA:
{
sprintf(str," select passwd, d_name, d_jumin, "
"d_tel2, d_email "
", d_regday from chr_log_info where login_id = '%s'", m_ChrInfo.login_id);
g_pDb->KSCToUnicode(str,query);
memset(&m_ChrLogInfo,0,sizeof(m_ChrLogInfo));
//ret = g_pDb->OpenRecord(query, &m_ChrLogInfo, 1, (BYTE)TOTAL_DB); // here
if( IsChrloginfoInDrDB() )
{
ret = g_pDb->OpenRecord(query, &m_ChrLogInfo, 1, (BYTE)DRAGON_DB[ m_nCurDbIndex ]); // 030214 老夯烙矫
}
else
{
ret = g_pDb->OpenRecord(query, &m_ChrLogInfo, 1, (BYTE)TOTAL_DB); // here
}
}
break;
case NATION_TAIWAN:
case NATION_THAILAND:
case NATION_HONGKONG:
case NATION_CHINA:
case NATION_MAL:
{
sprintf(str," select passwd, d_name, d_jumin, " //d_tel2客 d_email捞 绝促.
"d_regday from chr_log_info where login_id = '%s'", m_ChrInfo.login_id);
g_pDb->KSCToUnicode(str,query);
memset(&m_ChrLogInfo2,0,sizeof(m_ChrLogInfo2));
if( IsChrloginfoInDrDB() )
{
ret = g_pDb->OpenRecord(query, &m_ChrLogInfo2, 1, (BYTE)DRAGON_DB[ m_nCurDbIndex ]);
}
else
{
ret = g_pDb->OpenRecord(query, &m_ChrLogInfo2, 1, (BYTE)TOTAL_DB);
}
//KeyPoint!!!!!
memcpy( (void*)&(m_ChrLogInfo.regday) , (void*)&(m_ChrLogInfo2.regday), sizeof( DBTIMESTAMP) );
memcpy( (void*)&(m_ChrLogInfo.Wjumin) , (void*)&(m_ChrLogInfo2.Wjumin), 15);
memcpy( m_ChrLogInfo.Wname , m_ChrLogInfo2.Wname, 20 );
//strcpy( (char*)&(m_ChrLogInfo.Wname) , (char*)&(m_ChrLogInfo2.Wname));
//wsprintf( m_ChrLogInfo.Wjumin, "%u",m_ChrLogInfo2.Wjumin);
//printf
if( strlen(m_ChrLogInfo2.passwd ) > 20 )
{
MessageBox( "Errer In Get ChrLogInfo", NULL, MB_OK );
return FALSE;
}
strcpy(m_ChrLogInfo.passwd , m_ChrLogInfo2.passwd);
strcpy( m_ChrLogInfo.email, "");// = NULL;
break;
}
case NATION_JAPAN:
{
sprintf(str," select passwd, d_name, d_jumin, " //d_tel2客 d_email捞 绝促.
"d_regday from chr_log_info where login_id = '%s'", m_ChrInfo.login_id);
g_pDb->KSCToUnicode(str,query);
memset(&m_ChrLogInfoJp,0,sizeof(m_ChrLogInfoJp));
if( IsChrloginfoInDrDB() )
{
ret = g_pDb->OpenRecord(query, &m_ChrLogInfoJp, 1, (BYTE)DRAGON_DB[ m_nCurDbIndex ]);
}
else
{
ret = g_pDb->OpenRecord(query, &m_ChrLogInfoJp, 1, (BYTE)TOTAL_DB);
}
SetChrLogInfo( m_ChrLogInfo, m_ChrLogInfoJp );
break;
}
}
if(ret < 0) return FALSE;
else if(!ret)
{
MessageBox("No Result! : RM_QUERY_USER_INFO");
return FALSE;
}
//for Extensionlog
InitForLog();
#ifdef OLD_GUILD_CODE // 030331
return TRUE;
#endif
//Changed GuildCode // 030324
if( CHANGE_LIMITED_RESET_FORGUILD > m_ChrInfo.reset )
{//reset蔼捞 矩朝 蔼捞搁 扁粮 辨靛内靛蔼阑 荤侩茄促.
return TRUE;
}
sprintf(str," select spritvalue from chr_info where name='%s'", m_ComboCharName.GetBuffer( m_ComboCharName.GetLength()) );
g_pDb->KSCToUnicode(str,query);
ret = g_pDb->OpenRecord(query, &m_dwGuildCode, 1, (BYTE)DRAGON_DB[ m_nCurDbIndex ]);
//::MessageBoxPrintf( MB_OK, "%d", m_dwGuildCode );
if(ret < 0)
{
MessageBox("ERROR! : Get a GuildCode to DB");
return FALSE;
}
else if(!ret)
{
MessageBox("No Result! : Get a GuildCode to DB");
return FALSE;
}
return TRUE;
}
BOOL CCharacterView::QueryOtherCharByName()
{
if( !RIGHT(MASK_2) ) return FALSE;
WCHAR query[ 0xff ];
char str[ 0xff ];
char login_id[ 20 ]; memset(login_id,0,20);
sprintf(str, "select login_id from chr_info where [name]='%s'", m_ComboCharName);
g_pDb->KSCToUnicode(str, query);
int ret = g_pDb->OpenRecord(query, login_id, 1, (BYTE)DRAGON_DB[ m_nCurDbIndex ]);
if(ret < 0)
{
MessageBox("Query Failed : RM_QUERY_LOGIN_ID");
return FALSE;
}
sprintf(str, "select RTRIM(name1),RTRIM(name2),RTRIM(name3),"
"RTRIM(name4) from chr_log_info where login_id='%s'", login_id);
g_pDb->KSCToUnicode(str, query);
switch( g_iNation ) // 030102 kyo chr_log_info狼 name1... 狼 屈侥捞 char捞 酒匆 版快 default肺
{
case NATION_KOREA:
case NATION_TAIWAN:
{
ret = g_pDb->OpenRecord(query, &m_szAllCharName, 1, (BYTE)DRAGON_DB[ m_nCurDbIndex ]);
}break;
default:
{
wchar_name w_Allname;
memset(&w_Allname, 0, sizeof( w_Allname) );
//罐酒坷绰 磊丰屈狼 蔼捞 char牢啊 wchar牢啊甫 舅酒郴搁. 歹宽 祈茄单.//kyo
ret = g_pDb->OpenRecord(query, &w_Allname, 1, (BYTE)DRAGON_DB[ m_nCurDbIndex ]);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name1,-1, m_szAllCharName.name1, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name2,-1, m_szAllCharName.name2, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name3,-1, m_szAllCharName.name3, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name4,-1, m_szAllCharName.name4, 100, NULL, NULL);
}break;
}
//ret = g_pDb->OpenRecord(query, &m_szAllCharName, 1, (BYTE)DRAGON_DB[ m_nCurDbIndex ]);
if(ret < 0)
{
MessageBox("Query Failed : RM_QUERY_ALL_CHARACTER");
return FALSE;
}
c_ComboCharName.ResetContent();
c_ComboCharName.InsertString(0, m_szAllCharName.name1);
c_ComboCharName.InsertString(1, m_szAllCharName.name2);
c_ComboCharName.InsertString(2, m_szAllCharName.name3);
c_ComboCharName.InsertString(3, m_szAllCharName.name4);
return TRUE;
}
//ComboBox(某腐磐 捞抚)俊辑 浚磐 闷阑锭
void CCharacterView::OnComboEnter()
{
UpdateData(); //kyo 020826
if(!QueryBasicInfo()) return;
m_BasicDlg.RefreshData();
m_ItemDlg.RefreshData();
m_TacQuestDlg.RefreshData();
m_TakenSkillDlg.RefreshData();
m_SkillDataDlg.RefreshData();
m_GuildDlg.RefreshData();
//m_WareDlg.RefreshData(); // 021128
QueryOtherCharByName(); // 021114 kyo 蜡历 捞抚阑 滴锅 扁废且 鞘夸 绝促. 捞 郴侩篮 QueryBasicInfo俊 乐促.
//UpdateData( FALSE );//kyo 020826
((CMainFrame*)AfxGetMainWnd())->Chime(); //家府
if(AskUserOnline() > 0) //泅犁 立加吝牢 蜡历捞搁
{
SetDlgItemText(IDC_STATIC_ONLINE, " Connected ");
m_bOnline = TRUE;
c_Kick.EnableWindow(TRUE);
}
else
{
SetDlgItemText(IDC_STATIC_ONLINE, "No Use");
m_bOnline = FALSE;
c_Kick.EnableWindow(FALSE);
}
SetDlgItemText(IDC_COMBO_NAME,m_ComboCharName);
c_StaticOnline.Invalidate();
m_szCurCharName = m_ComboCharName;
m_szCurLoginId = m_ChrInfo.login_id;
}
// id鄂俊辑 Enter闷阑锭.
void CCharacterView::OnEnterFindID()
{
if( !RIGHT(MASK_2) ) return;
if( NULL == m_ComboCharName.GetBuffer(0) )
{
AfxMessageBox( "Insert Character ID" );
return;
}
if( 0 == c_ServerSet.GetCurSel())
{
AfxMessageBox( "Select ServerSet" );
return;
}
if( 0 >= c_ComboDb.GetLBTextLen( c_ComboDb.GetCurSel()) )
{
AfxMessageBox( "Select DataBase" );
return;
}
WCHAR query[ 0xff ];
char str[ 0xff ];
int ret;
sprintf(str, "select RTRIM(name1),RTRIM(name2),RTRIM(name3),RTRIM(name4) from chr_log_info where login_id='%s'", m_szFindID);
//sprintf(str, "select name1,name2,name3,name4 from chr_log_info where login_id='%s'", m_szFindID);
g_pDb->KSCToUnicode(str, query);
memset(&m_szAllCharName,0,sizeof(m_szAllCharName));
//ret = g_pDb->OpenRecord(query, &m_szAllCharName, 1, (BYTE)DRAGON_DB[ m_nCurDbIndex ]);
switch( g_iNation ) // 030102 kyo chr_log_info狼 name1... 狼 屈侥捞 char捞 酒匆 版快 default肺
{
case NATION_KOREA:
case NATION_TAIWAN:
{
ret = g_pDb->OpenRecord(query, &m_szAllCharName, 1, (BYTE)DRAGON_DB[ m_nCurDbIndex ]); // 怕惫侩捞骨肺 林籍贸府窃
}break;
default:
{
wchar_name w_Allname;
memset(&w_Allname, 0, sizeof( w_Allname) );
//罐酒坷绰 磊丰屈狼 蔼捞 char牢啊 wchar牢啊甫 舅酒郴搁. 歹宽 祈茄单.//kyo
ret = g_pDb->OpenRecord(query, &w_Allname, 1, (BYTE)DRAGON_DB[ m_nCurDbIndex ]);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name1,-1, m_szAllCharName.name1, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name2,-1, m_szAllCharName.name2, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name3,-1, m_szAllCharName.name3, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name4,-1, m_szAllCharName.name4, 100, NULL, NULL);
}break;
}
if( 1004 == ::GetPrivateProfileInt("Admin","idCheck",-10,g_szSetupPath) )
{
MessageBoxPrintf( IDOK, "id = %s, name1=%s,name2=%s,name3=%s,name4=%s", m_szFindID, m_szAllCharName.name1,
m_szAllCharName.name2,m_szAllCharName.name3,m_szAllCharName.name4);
}
// 021118 怕惫巩力肺 蜡聪内靛 楷嚼
//for thailand<<
/*
wchar_name w_Allname;
memset(&w_Allname, 0, sizeof( w_Allname) );
//罐酒坷绰 磊丰屈狼 蔼捞 char牢啊 wchar牢啊甫 舅酒郴搁. 歹宽 祈茄单.//kyo
ret = g_pDb->OpenRecord(query, &w_Allname, 1, (BYTE)DRAGON_DB[ m_nCurDbIndex ]);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name1,-1, m_szAllCharName.name1, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name2,-1, m_szAllCharName.name2, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name3,-1, m_szAllCharName.name3, 100, NULL, NULL);
::WideCharToMultiByte(CP_ACP, 0, w_Allname.name4,-1, m_szAllCharName.name4, 100, NULL, NULL);
*/
//for thailand>>
if(ret < 0)
{
MessageBox("Query Failed : RM_QUERY_ALL_CHARACTER");
return;
}else if(ret == 0)
{
MessageBox("Have no ID ");
return;
}
m_szCurLoginId = m_szFindID;
//021115 怕惫俊辑 某腐磐捞抚瘤况瘤绰 巩力 锭巩俊.
if( 18 == ::GetPrivateProfileInt("Admin","idCheck",-10,g_szSetupPath) )
{
MessageBoxPrintf( IDOK, "name1=%s,name2=%s,name3=%s,name4=%s", m_szAllCharName.name1,
m_szAllCharName.name2,m_szAllCharName.name3,m_szAllCharName.name4);
}
if(AskUserOnline(m_szFindID.GetBuffer( m_szFindID.GetLength()) ) > 0) //泅犁 立加吝牢 蜡历捞搁
{
SetDlgItemText(IDC_STATIC_ONLINE, "Connected");
m_bOnline = TRUE;
c_Kick.EnableWindow(TRUE);
//c_Kick.EnableWindow(FALSE);
c_StaticOnline.Invalidate();
}
else
{
SetDlgItemText(IDC_STATIC_ONLINE, "No Use");
m_bOnline = FALSE;
c_Kick.EnableWindow(FALSE);
c_StaticOnline.Invalidate();
}
c_ComboCharName.ResetContent();
c_ComboCharName.InsertString(0, m_szAllCharName.name1);
c_ComboCharName.InsertString(1, m_szAllCharName.name2);
c_ComboCharName.InsertString(2, m_szAllCharName.name3);
c_ComboCharName.InsertString(3, m_szAllCharName.name4);
c_ComboCharName.ShowDropDown();
c_ComboCharName.SetFocus();
//::SetFocus(::GetDlgItem(this->m_hWnd,IDC_EDIT_FIND_BY_ID));
}
//某腐磐 函版且锭
void CCharacterView::OnSelchangeComboName()
{
// TODO: Add your control notification handler code here
m_ItemDlg.SelectClear();
UpdateData();
#ifdef RM_REPAIR
DeleteAllRepairTable();
#endif
int nIndex = c_ComboCharName.GetCurSel();
if( nIndex < 0 ) return;
CString str;
c_ComboCharName.GetLBText(nIndex, str);
if( str.GetLength() <= 0 ) return;
m_ComboCharName = str;
if(!QueryBasicInfo())
{
return;
}
m_szCurCharName = m_ComboCharName;
m_szCurLoginId = m_ChrInfo.login_id;
m_BasicDlg.RefreshData();
m_ItemDlg.RefreshData();
m_TacQuestDlg.RefreshData();
m_TakenSkillDlg.RefreshData();
m_SkillDataDlg.RefreshData();
m_GuildDlg.RefreshData();
//m_WareDlg.RefreshData(); // 021128 kyo
#ifdef RM_REPAIR
EnterCriticalSection( &m_Crt );
InsertRepairTable( m_ChrInfo.login_id, m_ComboCharName.GetBuffer(0) );
LeaveCriticalSection( &m_Crt );
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -