问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言怎么获取完整的计算机名称

发布网友 发布时间:2022-03-01 08:39

我来回答

4个回答

热心网友 时间:2022-03-01 10:08

用GetComputerNameEx()函数。

函数原型:

BOOL WINAPI GetComputerNameEx(
  _In_    COMPUTER_NAME_FORMAT NameType,
  _Out_   LPTSTR               lpBuffer,
  _Inout_ LPDWORD              lpnSize
);

参数  NameType 名称类型,lpBuffer 接收名字的缓冲区指针   lpnSize接收名字的缓冲区大小

返回值:成功返回非0值,失败返回0

实例:

#define _WIN32_WINNT 0x0500

#include <windows.h>
#include <stdio.h>
#include <tchar.h>

void _tmain(void)
{
    TCHAR buffer[256] = TEXT("");
    TCHAR szDescription[8][32] = {TEXT("NetBIOS"), 
        TEXT("DNS hostname"), 
        TEXT("DNS domain"), 
        TEXT("DNS fully-qualified"), 
        TEXT("Physical NetBIOS"), 
        TEXT("Physical DNS hostname"), 
        TEXT("Physical DNS domain"), 
        TEXT("Physical DNS fully-qualified")};
    int cnf = 0;
    DWORD dwSize = sizeof(buffer);
    
    for (cnf = 0; cnf < ComputerNameMax; cnf++)
    {
        if (!GetComputerNameEx((COMPUTER_NAME_FORMAT)cnf, buffer, &dwSize))
        {
            _tprintf(TEXT("GetComputerNameEx failed (%d)\n"), GetLastError());
            return;
        }
        else _tprintf(TEXT("%s: %s\n"), szDescription[cnf], buffer);
        dwSize = _countof(buffer);
        ZeroMemory(buffer, dwSize);
    }
}

热心网友 时间:2022-03-01 11:26

用GetComputerNameEx(). 参数ComputerNameDnsFullyQualified。 MSDN上有完整的例子,这里转贴如下:

#include <stdio.h>
#include <windows.h>
#include <tchar.h>

int main(int argc, char** argv) 
{
    TCHAR buffer[256] = TEXT("");
    TCHAR szDescription[8][32] = {TEXT("NetBIOS"), 
        TEXT("DNS hostname"), 
        TEXT("DNS domain"), 
        TEXT("DNS fully-qualified"), 
        TEXT("Physical NetBIOS"), 
        TEXT("Physical DNS hostname"), 
        TEXT("Physical DNS domain"), 
        TEXT("Physical DNS fully-qualified")};
    int cnf = 0;
    DWORD dwSize = sizeof(buffer);
    
    for (cnf = 0; cnf < ComputerNameMax; cnf++)
    {
        if (!GetComputerNameEx((COMPUTER_NAME_FORMAT)cnf, buffer, &dwSize))
        {
            _tprintf(TEXT("GetComputerNameEx failed (%d)\n"), GetLastError());
            return -1;
        }
        else _tprintf(TEXT("%s: %s\n"), szDescription[cnf], buffer);

        dwSize = _countof(buffer);
        ZeroMemory(buffer, dwSize);
    }    
    return 0;
}

热心网友 时间:2022-03-01 13:01

hostname是个包含主机名/域名的字符串,函数通过给定的主机名,返回一个包含主机名称和主机地址信息的指针结构体。
、用这个 。希望采纳

热心网友 时间:2022-03-01 14:52

是不是有GetComputerDomain()函数?
C语言怎么获取完整的计算机名称

用GetComputerNameEx()函数。函数原型:BOOL WINAPI GetComputerNameEx( _In_ COMPUTER_NAME_FORMAT NameType, _Out_ LPTSTR lpBuffer, _Inout_ LPDWORD lpnSize);参数 NameType 名称类型,lpBuffer 接收名字的缓冲区指针 lpnSize接收名字的缓冲区大小 返回值:成功返回非0值,失败返...

急求解使用gethostname()的方法

答案:使用gethostname的方法可以获取计算机的主机名。解释:gethostname是一个常用的系统调用,用于获取当前运行程序所在计算机的主机名。主机名是一台计算机在网络中的名称,可以通过多种命令和函数进行查询和获取。具体操作方法:1. 在大多数编程环境中,如C语言或Python,都有相应的库函数或方法来实现get...

谁会用C语言获取操作系统版本号,计算机名啊?

GetUserName(LPWSTR lpBuffer, LPDWORD nSize);lpBuffer是一个数组的地址,用来存贮得到的用户名,nsize是个指针,指向此存贮此数组大小的单元,就是数组能存贮的字符数量 GetVersionExW(LPOSVERSIONINFOW);参数LPOSVERSIONINFO是一个指向OSVERSIONINFO类型变量的指针,具体判断代码如下 定义 OSVERSIONINFO osvi;...

如何用c语言程序获取计算机信息

开机密码不能获取哦。用户名很简单。只要用个GetUserName这个API就行了。详细的代码我给你看看://#include "stdafx.h"//#include "GetSysInfo.h"#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE[] = __FILE__;#endifCWinApp theApp;using namespace std;// 获取CPU...

批处理的批处理

ComputerName 计算机名,即右键我的电脑--属性--计算机名 选项卡中的“完整的计算机名称” ComSpeccmd.exe完整路径名 HomeDrive系统分区盘符,一般都是C盘,故而HomeDrive=C:Path可执行文件默认搜索路径。这个东东非常重要!待会儿单独讲解…ProgramFiles 就是系统的Program Files的路径啦,一般都是C:\Program Files,这就是...

如何用C语言取得计算机的机器特征码?

/// 获取系统名称 /// /// &lt;returns&gt;&lt;/returns&gt; private static string GetOperationSystemInName(){ OperatingSystem os = Environment.OSVersion;string osName = "UNKNOWN";switch (os.Platform){ case PlatformID.Win32Windows:switch (os.Version.Minor){ case 0:osName = "Windows 95"...

C语言读取计算机CPU的序列号、硬盘(网卡、机器名)

if(pSvc-&gt;GetObject(bstrMyCpuName, 0L, NULL, &amp;pCpuInst, NULL) != S_OK){ break;} if(pCpuInst-&gt;Get(bstrMyPropName, 0L, &amp;pVal, NULL, NULL) == S_OK){ nCpuNum++;dwCpuSpeed += pVal.lVal;} VariantClear(&amp;pVal);SysFreeString(bstrMyCpuName);bstrMyCpuName = NULL;} if...

请用c语言编程实现在计算机屏幕上分两行输出你的班级学号和姓名._百度...

include&lt;stdio.h&gt; void main(){ printf("班级:2015级计算机应用1班\n");printf("学号:123456789 \t姓名:张三");} 很简单,就两个输出语句,\n意思就是换行,\t是空8个字符的位置

怎么把用c语言开发的程序变成软件

1、打开Microsoft Visual Studio;2、在Microsoft Visual Studio界面中,点击编译菜单,执行编译指令,详细操作如下;3、编译完成后,再次在该菜单下,点击【生成】菜单,将会生成可执行文件,详细如下所示;4、上述执行完成后,我们可以在生成目录下查看可执行文件,如下图所示;5、最后直接双击执行该可执行...

C语言如何实现有重复元素的全排列?

在递归里面用交换的方式获取全排列,从第一个开始,不断与后面数交换,当然递归时不要忘记在后面写个换回来的语句。只要加个交换条件就可以了,在不相等时交换,相等时不交换。当前阶段,在编程领域中,C语言的运用非常之多,它兼顾了高级语言和汇编语言的优点,相较于其它编程语言具有较大优势。计算机...

c语言是计算机的什么语言? 属于计算机程序设计语言的是 计算机c语言程序设计 计算机二级c语言程序设计 c语言怎么获取时间 计算机c语言 计算机语言有哪些 c语言计算机二级 计算机二级c语言好过吗
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
肝癌手术引流管放哪里 肝癌手术切除后,如果引流管的水大量流进腹腔的话会引起全身转移吗? 肝癌术后引流液多久可以消失 海淀区车号以哪个字母开头 为什么在安卓应用宝里下我的世界,原来明明应用宝上显示着0.14.1的下... 从昨天开始 我的手机应用宝就老是自动下载我的世界加速器。。。还有... 我的世界不用下应用宝就能玩 有一款手机游戏原始人可以打动物和捡石头盖房子日落之前必须回来_百度... 应用宝里下载的我的世界是不是正版? 怎么申请apple id 手机怎么申请apple id 现在朋友圈可以看到访客记录吗 这个c语言怎么来的? 微信朋友圈可以看访客记录吗,真的假的 C语言的全称是什么? 微信朋友圈可以看自己的访客记录吗 朋友圈可以查看访客记录吗 微信朋友圈有什么办法可以看访客记录吗 朋友圈能看到访客记录吗 朋友圈能看访客记录吗 DNS设置异常怎么修复 dns异常怎么都修复不了 dns异常却可以上网,怎么修复? 网络dns异常怎么修复 路由器显示DNS服务器异常怎么解决 dns异常怎么修复win10 光纤dns异常怎么修复 DNS服务异常怎么办? 泰州姜堰有什土特产? 网络显示dns异常要怎么办? 移动宽带dns异常怎么修复? c语言如何得到磁盘分区名称 现在朋友圈访客记录能查看到了吗? c语言怎样输出一个变量名? 可以看微信朋友圈访客记录吗 c语言,怎么弄 黄钻怎样隐身访问别人的QQ空间啊 黄钻用户如何用手机QQ隐身访问别人的空间? qq黄钻怎么设置隐身访问别人的空间 qq黄钻怎么设置隐身访问别人空间 想自己学习Java,但是没有基础,怎么才能真正的入门呢? 零基础可以学习java吗? 是不是黄钻可以隐身访问别人空间? 想学习JAVA语言,没有基础,会不会很难??? 黄钻如何隐身访问他人空间? QQ黄钻,能不能隐身访问别人空间?怎么弄 手机QQ用黄钻怎么隐身访问别人空间 怎样隐身访问他人空间 不是通信专业毕业,能考华为认证码?还能考什么比较有用的? 开黄钻后可以随意隐身访问别人空间吗? 我是qq黄钻用户,想隐身访问某个人的空间,可他不是我的qq好友,这样的话,可以对他设置隐身访问吗?