共用方式為


GetComputerNameA 函式 (winbase.h)

擷取本機計算機的 NetBIOS 名稱。 當系統從登錄讀取它時,系統會在系統啟動時建立此名稱。

GetComputerName 只會擷取本機電腦的 NetBIOS 名稱。 若要擷取 DNS 主機名、DNS 功能變數名稱或完整 DNS 名稱,請呼叫 getComputerNameEx 函式 IADsADSystemInfo 介面會提供其他資訊。

如果本機計算機是叢集中的節點,此函式的行為可能會受到影響。 如需詳細資訊,請參閱 ResUtilGetEnvironmentWithNetNameUseNetworkName

語法

BOOL GetComputerNameA(
  [out]     LPSTR   lpBuffer,
  [in, out] LPDWORD nSize
);

參數

[out] lpBuffer

接收電腦名稱或叢集虛擬伺服器名稱之緩衝區的指標。 緩衝區大小應該夠大,足以包含MAX_COMPUTERNAME_LENGTH + 1 個字元。

[in, out] nSize

在輸入上,指定緩衝區的大小,TCHAR。 在輸出中, 複製到目的地緩衝區的 TCHAR 數目,不包括終止的 Null 字元。

如果緩衝區太小,函式會失敗,GetLastError 會傳回ERROR_BUFFER_OVERFLOW。 lpnSize 參數會指定所需的緩衝區大小,包括終止的 Null 字元。

傳回值

如果函式成功,則傳回值是非零值。

如果函式失敗,傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

言論

GetComputerName 函式會擷取在系統啟動時建立的 NetBIOS 名稱。 SetComputerNameSetComputerNameEx 函式所做的名稱變更,在使用者重新啟動電腦之前,才會生效。

如果呼叫端是在用戶端會話下執行,此函式會傳回伺服器名稱。 若要擷取用戶端名稱,請使用 WTSQuerySessionInformation 函式。

例子

如需範例,請參閱 取得系統資訊

注意

winbase.h 標頭會將 GetComputerName 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式]
支援的最低伺服器 Windows 2000 Server [傳統型應用程式 |UWP 應用程式]
目標平臺 窗戶
標頭 winbase.h (包括 Windows.h)
連結庫 Kernel32.lib
DLL Kernel32.dll

另請參閱

電腦名稱

GetComputerNameEx

SetComputerName

SetComputerNameEx

系統資訊函式