1、用gethostname函数获取计算机名,用gethostbyname函数获取当前系统ip

#include <iostream>using namespace std;#include "winsock2.h"
#pragma comment(lib,"ws2_32.lib")int main(int argc, char* argv[])
{//初始化:如果不初始化,以下代码将无法执行WSAData data;if(WSAStartup(MAKEWORD(1,1),&data)!=0){cout<<"初始化错误,无法获取主机信息..."<<endl ;}char host[255];//获取主机名:也可以使用GetComputerName()这个函数if(gethostname(host,sizeof(host))==SOCKET_ERROR){cout<<"无法获取主机名..."<<endl;}else{cout<<"本机计算机名为:"<<host<<endl;}//获取计算机IP:gethostbyname也需要初始化(上面已初始化)struct hostent *p=gethostbyname(host);if(p==0){cout<<"无法获取计算机主机名及IP..."<<endl;}else{//获取本机计算机名//cout<<"本机计算机名为:"<<p->h_name<<endl;//本机IP:利用循环,输出本机所有IPfor(int i=0;p->h_addr_list[i]!=0;i++){struct in_addr in;memcpy(&in,p->h_addr_list[i],sizeof(struct in_addr));cout<<"第"<<i+1<<"块网卡的IP为:"<<inet_ntoa(in)<<endl;}}WSACleanup();
}

2、用GetComputerName函数获取计算机名,用GetUserName函数获取当前用户名

#include <windows.h>
#include <stdio.h>int main(int argc, char* argv[])
{ const int MAX_BUFFER_LEN = 500;char  szBuffer[MAX_BUFFER_LEN];DWORD dwNameLen;dwNameLen = MAX_BUFFER_LEN;if (!GetComputerName((LPWSTR)szBuffer, &dwNameLen)) printf_s("Error  %d\n", GetLastError());elseprintf_s("计算机名为: %S\n", szBuffer);    //这里得到的应该是宽字符,用%ls或者%S,不然无法正常打印  dwNameLen = MAX_BUFFER_LEN;if (!GetUserName((LPWSTR)szBuffer, &dwNameLen))printf_s("Error  %d\n", GetLastError());elseprintf_s("当前用户名为:%S\n", szBuffer);  //这里得到的应该是宽字符,用%ls或者%S,不然无法正常打印  return 0;
}

获取windows系统ip、计算机名、当前用户名相关推荐

  1. 获取Windows操作系统信息计算机名,操作系统型号,版本号,CPU架构,SP号

    #if defined(WIN32) || defined(WIN64) typedef void (__stdcall *FUN_GetNativeSystemInfo)(LPSYSTEM_INFO ...

  2. 这段百度问答,对我相关有对啊!!!----如何获取Windows系统登陆用户名

    如何获取Windows系统登陆用户名 http://zhidao.baidu.com/link?url=Hva9PkVwYZv8KSEWftSqTWe8fqM1dhoq59BurnfADmcOvFjF ...

  3. 通过PowerShell获取Windows系统密码Hash

    当你拿到了系统控制权之后如何才能更长的时间内控制已经拿到这台机器呢?作为白帽子,已经在对手防线上撕开一个口子,如果你需要进一步扩大战果,你首先需要做的就是潜伏下来,收集更多的信息便于你判断,便于有更大 ...

  4. Ubuntu系统修改主机名和用户名

    Ubuntu系统修改主机名和用户名 如果无法进入UBUNTU桌面,进入命令行界面方法 如何修改主机名和用户名,参考 1. 首先更改主机名字----改为bbb: (1) 修改hostname文件 (2) ...

  5. ubuntu安装时姓名、计算机名、用户名的含义

    如有问题,请加扣扣群:460189483 ubuntu安装时,最后一步是设置姓名.计算机名.用户名,那么这些名字是什么意思?之后又有什么作用呢?下面来详解一下 安装最后一步如图: 一个一个来分析 您的 ...

  6. 计算机名改了怎么恢复,手把手练习win10系统改计算机名和工作组的恢复技巧

    朋友们在使用电脑工作的过程中会碰到win10系统改计算机名和工作组的情况,想必很多朋友都遇到过win10系统改计算机名和工作组的问题吧.有关如何解决win10系统改计算机名和工作组的问题也不难.按照1 ...

  7. VC++ 获取Windows系统开机时间

    以下提供两种方法获取Windows系统的开机时间 第一种是使用C++的函数,该方法使用当前时间减去系统运行时间,秒级的,偶尔存在1秒的差异 第二种是使用Windows的API,该方法获取到的时间与cm ...

  8. Unity实现获取Windows系统声音并实现可视化

    效果 简介 该项目通过使用CSCore.dll来获取Windows系统声音的输出.并使用Rhythm Visualizator Pro 2.2b插件来实现上面的效果. 脚本简介(这里就只介绍一些重要的 ...

  9. 2008系统更改计算机名,用Windows server 2008 R2更改计算机名的方法

    用Windows server 2008 R2更改计算机名的方法 腾讯视频/爱奇艺/优酷/外卖 充值4折起 Windows Server 2008 R2是第一个只提供64位版本的服务器操作系统,在其使 ...

最新文章

  1. IOS笔记 #pragma mark的用法
  2. [HDOJ2819]Swap(二分图最大匹配, 匈牙利算法)
  3. 使用alipaySDK编译时找不到openssl/asn1.h文件的解决办法(初探)
  4. nohup命令_后台任务与nohup命令
  5. JDK源码解析之Java.util.Collection
  6. Mysql更改表名大小写不敏感
  7. hadooppythonudf_Hive使用python编写的自定义函数UDF进行ETL
  8. VS Code 新扩展,面向 Web 开发人员调试 DOM
  9. ]网易游戏游戏开发工程师
  10. 信息熵,条件熵,相对熵,交叉熵
  11. oracle 审计变换表空间_Oracle审计日志和审计策略数据表迁移到新表空间
  12. pdf转word好用的软件
  13. 公开处刑,专家博主开发游戏的老王专栏抄袭事件始末
  14. 支持跨平台的移动开发工具大盘点!
  15. 用python设置背景音乐_用Python设置
  16. 【ACWing】1137. 选择最佳线路
  17. 在阿里云里怎么样可以连接阿里云数据库
  18. 鸿蒙初开三界未立,太子长琴
  19. 360路由器设置网段ip
  20. ArcGIS如何进行自动矢量化操作

热门文章

  1. 适合 Ubuntu的8款最佳录屏软件
  2. av_dump_format
  3. 统计输入字符串中大写字母、小写字母、阿拉伯数字个数和特殊符号的个数
  4. Linux用户获得超级管理员权限
  5. 护照 MRZ码编码规则
  6. 腾讯跟阿里两位王者之间的对比
  7. 5 款可替代 du 命令的工具
  8. Widget我姗姗来迟
  9. 开源项目贡献者_如何管理开源项目的临时贡献者
  10. EAI_BOT越登智能车