Bagikan melalui


Fungsi GetUserNameA (winbase.h)

Mengambil nama pengguna yang terkait dengan utas saat ini.

Gunakan fungsi GetUserNameEx untuk mengambil nama pengguna dalam format tertentu. Informasi tambahan disediakan oleh antarmuka IADsADSystemInfo .

Sintaks

BOOL GetUserNameA(
  [out]     LPSTR   lpBuffer,
  [in, out] LPDWORD pcbBuffer
);

Parameter

[out] lpBuffer

Penunjuk ke buffer untuk menerima nama masuk pengguna. Jika buffer ini tidak cukup besar untuk memuat seluruh nama pengguna, fungsi gagal. Ukuran buffer karakter (UNLEN + 1) akan menyimpan nama pengguna panjang maksimum termasuk karakter null yang mengakhiri. UNLEN didefinisikan dalam Lmcons.h.

[in, out] pcbBuffer

Pada input, variabel ini menentukan ukuran buffer lpBuffer , dalam TCHAR. Pada output, variabel menerima jumlah TCHAR yang disalin ke buffer, termasuk karakter null yang mengakhiri.

Jika lpBuffer terlalu kecil, fungsi gagal dan GetLastError mengembalikan ERROR_INSUFFICIENT_BUFFER. Parameter ini menerima ukuran buffer yang diperlukan, termasuk karakter null yang mengakhiri.

Nilai kembali

Jika fungsi berhasil, nilai yang dikembalikan adalah nilai bukan nol, dan variabel yang diacu oleh lpnSize berisi jumlah TCHAR yang disalin ke buffer yang ditentukan oleh lpBuffer, termasuk karakter null yang mengakhiri.

Jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.

Keterangan

Jika utas saat ini meniru klien lain, fungsi GetUserName mengembalikan nama pengguna klien yang ditiru oleh utas.

Jika GetUserName dipanggil dari proses yang berjalan di bawah akun "NETWORK SERVICE", string yang dikembalikan di lpBuffer mungkin berbeda tergantung pada versi Windows. Pada Windows XP, string "NETWORK SERVICE" dikembalikan. Pada Windows Vista, string "<HOSTNAME>$" dikembalikan.

Contoh

Misalnya, lihat Mendapatkan Informasi Sistem.

Catatan

Header winbase.h mendefinisikan GetUserName sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header winbase.h (termasuk Windows.h)
Pustaka Advapi32.lib
DLL Advapi32.dll

Lihat juga

GetUserNameEx

LookupAccountName

Fungsi Informasi Sistem