c++ - GetComputerName 返回的内容对于我的计算机名称来说太短了……怎么办?

标签 c++ windows

我的电脑名称类似于:“ABC12-PEACEBRINGER”(18 个字符),它是一台 windows xp 机器,尽管最终程序也需要在 windows 7 上运行。

当我使用以下 C++ 代码时,计算机名称被截断,返回值是 ABC12-PEACEBRIN

TCHAR   MachineName[32];
DWORD   buf = 32;
GetComputerNameA(MachineName, &buf);

顺便说一句。当我在我的 cmd 中键入 ipconfig/all 时,我确实获得了完整的计算机名称。

我尝试了一些与 msdn 不同的解决方案主页,但结果保持不变。

有谁知道获得那个长度的计算机名称的解决方案?! ...更改名称不是解决方案;-)

最佳答案

NetBIOS 名称(GetComputerName 返回)限制为 15 个字符。

您可能需要一些其他变体——查看 GetComputerNameEx 以了解您的选择。

http://msdn.microsoft.com/en-us/library/windows/desktop/ms724301%28v=vs.85%29.aspx

关于c++ - GetComputerName 返回的内容对于我的计算机名称来说太短了……怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24163989/

相关文章:

C++:计算 HashMap 中相等比较的次数

windows - 如何使用批处理文件杀死特定的VBScript?

java - "cygwin"终端下未处理的转义序列

c# - 从mp3文件中删除特定的频率

C++ Linux 到 Windows 交叉编译错误

c++ - 中点粗椭圆绘制算法

c++ - 删除二叉搜索树中的单个元素 (C++)

c++ - 有人建议我这段代码中剩下的内容。运行时未显示任何错误,但输出带有垃圾值

c++ - 使用引用的 constexpr 静态成员作为模板参数

未安装 Python 2.7.11 pip