VS怎么改内编码

zl39049979 zl39049979 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
RT,我用的中文版VS2005,如今在用IP控件时得到地址然后转换,再赋到那个地址结构,出现错误,转换后的赋给地址结构出问题了
void CTestClientDlg::ConvertIpAddr()
{
if( IpAddr.IsEmpty() || PortNum ==0)
{
BYTE IP0,IP1,IP2,IP3;
m_CIpAddr.GetAddress( IP0, IP1, IP2, IP3);
//m_CIpAddr.GetAddress( &dwAddr);

//CString str;
//IpAddr.Format(_T("%d.%d.%d.%d"),(int)IP0,(int)IP1,(int)IP2,(int)IP3);

m_CE_PortNum.GetWindowText( str);
PortNum = _ttoi((LPTSTR)(LPCTSTR)str);

if( IpAddr.IsEmpty() || PortNum ==0)
{
MessageBox( _T("请输入IP地址和端口"),_T("警告"),MB_OK);
return ;
}
}
}
CTestClient::CTestClient( )
{
s = socket( AF_INET, SOCK_STREAM, IPPROTO_TCP);
if( s == INVALID_SOCKET)
{
// MessageBox( NULL,"create socket failed","warning",MB_OK);
}
ServAddr.sin_family = AF_INET;
ServAddr.sin_port = htons( PortNum);
//wchar_t szIpAdr[100]={0x00};
//CString str;
//str ="127.0.0.1";
//ServAddr.sin_addr.S_un.S_addr = inet_addr( (LPSTR)(LPTSXX这里也是个宏,刚才被人删掉忘记了)IpAddr);
ServAddr.sin_addr.S_un.S_addr = inet_addr( "127.0.0.1");
//ServAddr.sin_addr.S_un.S_addr = inet_addr( &dwAddr);


}

调试看时发现ipaddr没问题,赋给结构的时候少了第1字节,比如127.0.0.1就变成了0.0.0.1了。初步怀疑是编码问题,有些转换都要加_T,小弟接触WINDOW不久,希望各位帮帮忙
...全文

相关推荐

评论 7
收藏 已收藏
分享
返回顶部
zl39049979
VC/MFC 16,550 成员 421,606 内容