如题!
解决方案 »
- DirectX 9.0 3D游戏开发编程基础/(美) Frank D. Luna著 这本书好不?我想作2D游戏开发,看这书?
- 窗口关闭了, 程序却没有退出
- MFC数据库编程问题!!!
- 高分求解!关于CEditView的两个问题
- 关于浏览器插件本地自动安装,请高手!
- 如何更改生成exe文件的图标
- 如何得到在ListCtrl中拉动一列时的消息?????
- 在VC中如何实现启动画面?
- 请赐教,在那里可以有《深入浅出MFC》下载啊
- 链表表示的多叉树如何存入文件??
- 请教vc编程高手(在线等):一个程序很大,它涉及到好多个不同目录下的文件,关于自己写的头文件的问题
- 又一个很菜问题,如何在对话框中点击了最大化,更改对话框中控件位置和大小?
{
WORD wVersionRequested;
WSADATA wsaData;
wVersionRequested = MAKEWORD( 2, 2 );
int err = WSAStartup( wVersionRequested, &wsaData );
if ( err != 0 ) {
SetErrorNumber(DY_SOCKET_DLL_ERROR);
return _T("127.0.0.1");
}
if ( LOBYTE( wsaData.wVersion ) != 2 ||
HIBYTE( wsaData.wVersion ) != 2 )
{
/* Tell the user that we could not find a usable *
/* WinSock DLL. */
WSACleanup( );
SetErrorNumber(DY_SOCKET_DLL_ERROR);
return _T("127.0.0.1");;
}
TCHAR szHostName[128];
memset(szHostName,0,sizeof(TCHAR)*128);
PTSTR lpszAddr = szHostName;
if (gethostname(szHostName, sizeof(szHostName)) == SOCKET_ERROR)
lstrcpy(lpszAddr, "127.0.0.1");
else
{
LPHOSTENT lpHostent = gethostbyname(szHostName);
if ((lpHostent != NULL) && (lpHostent->h_addr_list[0] != NULL))
{
struct in_addr Addr;
memcpy(&Addr.s_addr, lpHostent->h_addr_list[0],
sizeof(Addr.s_addr));
lpszAddr = inet_ntoa(Addr);
if (lpszAddr == NULL)
lstrcpy(lpszAddr, "127.0.0.1");
}
else
lstrcpy(lpszAddr, "127.0.0.1");
}
CString str = lpszAddr;
WSACleanup();
return str;
}