24小时热门版块排行榜    

查看: 167  |  回复: 0
当前主题已经存档。

zsglly

木虫 (著名写手)

[交流] 激活当前屏幕保护及获取网上计算机名及其IP地址

1.         如何激活当前屏幕保护程序

// 激活当前屏幕保护程序
       PostMessage(WM_SYSCOMMAND,SC_SCREENSAVE,0);

2.         如何获取局域网上计算机名及它们的IP地址

l         连接ws2_32.lib和 mpr.lib库

l         #include winsock2.h

CString strTemp;
struct hostent *host;
  
struct in_addr *ptr; // 检索IP地址  
  
DWORD dwScope = RESOURCE_CONTEXT;
NETRESOURCE *NetResource = NULL;
HANDLE hEnum;
WNetOpenEnum( dwScope, NULL, NULL,  
             NULL, &hEnum );
  
WSADATA wsaData;
WSAStartup(MAKEWORD(1,1),&wsaData);
  
if ( hEnum )
{
    DWORD Count = 0xFFFFFFFF;
    DWORD BufferSize = 2048;
    LPVOID Buffer = new char[2048];
    WNetEnumResource( hEnum, &Count,  
        Buffer, &BufferSize );
    NetResource = (NETRESOURCE*)Buffer;
  
    char szHostName[200];
    unsigned int i;
  
    for ( i = 0;  
        i < BufferSize/sizeof(NETRESOURCE);  
        i++, NetResource++ )
    {
        if ( NetResource->dwUsage ==  
            RESOURCEUSAGE_CONTAINER &&  
            NetResource->dwType ==  
            RESOURCETYPE_ANY )
        {
            if ( NetResource->lpRemoteName )
            {
                CString strFullName =  
                    NetResource->lpRemoteName;
                if ( 0 ==  
                    strFullName.Left(2).Compare("\\\\" )   
                    strFullName =  
                        strFullName.Right(
                            strFullName.GetLength()-2);
  
                gethostname( szHostName,  
                    strlen( szHostName ) );
                host = gethostbyname(strFullName);
  
                if(host == NULL) continue;  
                ptr = (struct in_addr *)  
                    host->h_addr_list[0];                     
  
                // =. 分隔开IP:211.40.35.76.              
                int a = ptr->S_un.S_un_b.s_b1;  // 211            
                int b = ptr->S_un.S_un_b.s_b2;  // 40
                int c = ptr->S_un.S_un_b.s_b3;  // 35
                int d = ptr->S_un.S_un_b.s_b4;  // 76
  
                strTemp.Format("%s -->  %d.%d.%d.%d",
                    strFullName,a,b,c,d);
                AfxMessageBox(strTemp);
            }
        }
    }
  
    delete Buffer;
    WNetCloseEnum( hEnum );  
}
  
WSACleanup();

[ Last edited by 幻影无痕 on 2006-11-27 at 08:17 ]
回复此楼

» 猜你喜欢

做人要厚道啊!厚道啊!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zsglly 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 一志愿武理085500机械专业总分300求调剂 +3 an10101 2026-03-24 7/350 2026-03-25 00:00 by 山鬼0-
[考研] 0854人工智能方向招收调剂 +3 章小鱼567 2026-03-24 3/150 2026-03-24 19:46 by zhouxuan..
[考研] 材料学硕333求调剂 +3 北道巷 2026-03-24 3/150 2026-03-24 19:17 by pswait
[考研] 收08调剂生 +6 komorebi69 2026-03-18 6/300 2026-03-24 19:09 by 汪!?!
[考研] 070300化学求调剂 +9 苑豆豆 2026-03-20 9/450 2026-03-24 17:15 by licg0208
[考研] 291求调剂 +3 HanBeiNingZC 2026-03-24 3/150 2026-03-24 16:34 by barlinike
[考研] 293求调剂 +6 加一一九 2026-03-24 6/300 2026-03-24 14:29 by JourneyLucky
[考研] 081700 调剂 267分 +9 迷人的哈哈 2026-03-23 9/450 2026-03-24 11:58 by 544594351
[考研] 一志愿河北工业大学0817化工278分求调剂 +7 jhybd 2026-03-23 12/600 2026-03-24 09:03 by jhybd
[考研] 一志愿西安交通大学材料工程专业 282分求调剂 +11 枫桥ZL 2026-03-18 13/650 2026-03-22 20:26 by edmund7
[考研] 289材料与化工(085600)B区求调剂 +3 这么名字咋样 2026-03-22 4/200 2026-03-22 17:56 by 云民大李老师
[考研] 260求调剂 +3 朱芷琳 2026-03-20 4/200 2026-03-22 15:12 by 朱芷琳
[考研] 初试 317 +7 半拉月丙 2026-03-20 7/350 2026-03-21 22:26 by peike
[考研] 336求调剂 +5 rmc8866 2026-03-21 5/250 2026-03-21 17:24 by 学员8dgXkO
[考研] 332求调剂 +3 凤凰院丁真 2026-03-20 3/150 2026-03-21 10:27 by luoyongfeng
[考研] 294求调剂材料与化工专硕 +15 陌の森林 2026-03-18 15/750 2026-03-20 23:28 by JourneyLucky
[考研] 求调剂一志愿南京航空航天大学289分 +3 @taotao 2026-03-19 3/150 2026-03-20 21:34 by JourneyLucky
[考研] 295材料求调剂,一志愿武汉理工085601专硕 +5 Charlieyq 2026-03-19 5/250 2026-03-20 20:35 by JourneyLucky
[考研] 一志愿西安交通大学 学硕 354求调剂211或者双一流 +3 我想要读研究生 2026-03-20 3/150 2026-03-20 20:13 by JourneyLucky
[考研] 求调剂 +3 eation27 2026-03-20 3/150 2026-03-20 19:32 by JourneyLucky
信息提示
请填处理意见