我的计算机名称与此类似:“ABC12-PEACEBRINGER”(18个字符),它是一个windows xp机器,虽然最终程序也需要在Windows 7上运行。
当我使用以下c ++代码时,计算机名称会被切断并返回
ABC12-PEACEBRIN
。
TCHAR MachineName[32];
DWORD buf = 32;
GetComputerNameA(MachineName, &buf);
顺便说一下。当我在我的cmd中输入ipconfig /all
时,我会得到完整的计算机名称。
我在msdn主页上尝试了一些不同的解决方案,但结果仍然相同。
有没有人知道获得该长度的计算机名称的解决方案?! ...更改名称不是解决方案; - )
答案 0 :(得分:4)
NetBIOS名称(GetComputerName
返回)限制为15个字符。
您可能想要其他一些变体 - 请GetComputerNameEx
查看您的选项。
http://msdn.microsoft.com/en-us/library/windows/desktop/ms724301%28v=vs.85%29.aspx