UNICODE环境下,CIPAddressCtrl地址控件的处理

来源:互联网 发布:知乎大神萧井陌 编辑:程序博客网 时间:2024/05/17 02:25

问题描述:

项目工程为VS2008  UNICODE环境,需要添加TCP/IP通讯功能,自然需要提供设置IP地址和端口的接口给用户,但是从配置文件中读取出来正常,输入到界面就有问题,在网上查了很多这种情况,但是给出的解决方法都不适用。

最后使用了非常土的方法解决了问题,算是曲线救国吧。


解决代码:

        TCHAR ip[20];GetPrivateProfileString(_T("Server"),_T("IP"),_T("127.0.0.1"),ip,20,_T("Server.ini"));//MessageBox(ip);CString strIP = ip;char temp[30];for(int i=0;i<20;i++)temp[i] = ip[i];temp[19] = '\0';DWORD dwIP;dwIP = inet_addr(temp);//此处转换后的IP地址顺序不正确BYTE a,b,c,d;m_IP.SetAddress(dwIP);m_IP.GetAddress(a,b,c,d);m_IP.SetAddress(d,c,b,a);//调整IP顺序,输出到界面m_port = GetPrivateProfileInt(_T("Server"),_T("Port"),9001,_T("Server.ini"));UpdateData(false);

0 0