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 |