1. ホーム
  2. c++

[解決済み] GetComputerNameの戻り値が私のコンピュータ名に対して短すぎるのですが、どうしたらいいですか?

2022-03-04 18:17:39

質問

私のコンピュータの名前は次のようなものです: "ABC12-PEACEBRINGER" (18 characters) and it's a windows xp machine while the final program needs to run on windows 7.

以下のc++のコードを使用すると、コンピュータ名が切り取られ、リターンが ABC12-PEACEBRIN .

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

と入力すると ipconfig /all をcmdに入力すると、完全なコンピュータ名が表示されます。

からいくつかの異なる解決策を試してみました。 msdn のホームページをご覧ください。

どなたか、この長さのコンピュータ名を取得する解決策をご存知ですか! ...名前を変えても解決にはなりません;-)

解決方法は?

NetBIOS名(これは GetComputerName が返す文字数は15文字までです。

他のバリエーションが必要な場合は、次のようになります。 GetComputerNameEx を選択することができます。

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