已知IP,求计算机名

rib06 2002-06-20 04:45:37
如果已知局域网上一台计算机的IP地址,如何得到他的计算机名?请大家帮帮忙!
...全文
46 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
rib06 2002-06-21
  • 打赏
  • 举报
回复
哈哈,所见略同,我来正是要说:问题已经解决,就是定义了一个unsigned long,来接受inet_addr(),多谢各位高手了!
hpp_124 2002-06-21
  • 打赏
  • 举报
回复
有没有现成的应用程序?
比如说直接输入什么命令就可以知道主机名了!
Deer5020 2002-06-21
  • 打赏
  • 举报
回复
我用论坛助手回复,怎么会多出那么多垃圾?
Deer5020 2002-06-21
  • 打赏
  • 举报
回复
你的代码没问题。
不过你IP地址格式没写对。
应该像这样子。
这样你应该不会再问len为4是什么意思了吧。

charm_ip[4] = {0x7F,0x00,0x00,0x01};//127.0.0.1
================================================================

CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!

★ 浏览帖子速度极快![建议系统使用ie5.5以上]。 ★ 多种帖子实现界面。
★ 保存帖子到本地[html格式]★ 监视您关注帖子的回复更新。
★ 可以直接发贴、回复帖子★ 采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录!
★ 支持在线检测程序升级情况,可及时获得程序更新的信息。

★★ 签名 ●
可以在您的每个帖子的后面自动加上一个自己设计的签名哟。

Http://www.ChinaOK.net/csdn/csdn.zip
Http://www.ChinaOK.net/csdn/csdn.rar
Http://www.ChinaOK.net/csdn/csdn.exe [自解压]

bljbljbljblj 2002-06-21
  • 打赏
  • 举报
回复
反过来怎么求?
rib06 2002-06-21
  • 打赏
  • 举报
回复
多谢各位高手,我的代码是这样写的:
HOSTENT *pHost;
UpdateData(TRUE);
WORD wVersionRequested;
WSADATA wsaData;
// ipaddr=inet_addr(m_ip);
wVersionRequested = MAKEWORD( 2, 0 );
if ( WSAStartup( wVersionRequested, &wsaData ) == 0 )
{
if((pHost=gethostbyaddr((char *)&m_ip,4,AF_INET)) == NULL)
{
int err=WSAGetLastError();
MessageBox("无效IP地址!");
m_err=err;
UpdateData(FALSE);
return;
}
else
{
m_name=pHost->h_name;
UpdateData(FALSE);
}
WSACleanup();
}
UpdateData(FALSE);
可是每次都Message出“无效IP地址”,用err接收到的错误号是11004,对应的error code是WSANO_DATA。这是问什么?请高手指点!
kmcyz 2002-06-21
  • 打赏
  • 举报
回复
不好意思,更正一下:
struct hostent* pHost;
unsigned long ulIP=inet_addr("127.0.0.1");
pHost = gethostbyaddr((char *)&ulIP,4,AF_INET);
if(pHost!=NULL)
{
CString strName;
strName=pHost->h_name);
kmcyz 2002-06-21
  • 打赏
  • 举报
回复
struct hostent* pHost;
unsigned long ulIP=inet_addr(strAddr);
pHost = gethostbyaddr((char *)&ulIP,4,AF_INET);
if(pHost!=NULL)
{
CString strAddr;
strAddr=pHost->h_name);
}
rib06 2002-06-21
  • 打赏
  • 举报
回复
还有,msdn里gethostbyaddr的第一个参数不是字符串吗?难道那里不应填入"127.0.0.1",而是"127001"?这是怎么回事?
另外,楼上听风听雨提到IPAddr,不知是在哪里定义的宏,编译器不认识。
rib06 2002-06-21
  • 打赏
  • 举报
回复
to Deer5020:
多谢多谢,可是,我用Edit读进来的都是CString,怎么转换成那个16进制的一维数组?还望指点!
beijingshizi 2002-06-20
  • 打赏
  • 举报
回复
gethostbyaddr
与gethostbyname对应的,看一下msdn,有基本详细的介绍
Lemon_2000 2002-06-20
  • 打赏
  • 举报
回复
up
rib06 2002-06-20
  • 打赏
  • 举报
回复
to wistaria:
多谢!我今天下午查了gethostbyaddr的用法,对后两个参数不太理解,所谓len,是指什么?为什么是4?后面的AF_INET是不是一般情况下的type?
leecyi 2002-06-20
  • 打赏
  • 举报
回复
wistaria(听风听雨) 很详细了。gethostbyaddr
wistaria 2002-06-20
  • 打赏
  • 举报
回复
IPAddr ipAddr;
ipAddr = inet_addr ("211.11.14.168");
struct hostent *hp;
hp = gethostbyaddr((char *)&ipAddr,4,AF_INET);
strComputerName = hp->h_name;
AmiaBoy 2002-06-20
  • 打赏
  • 举报
回复
gethostbyaddr

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧