我尝试了https://stackoverflow.com/a/11587467/2738536
#include <windows.h>
#include <Lmcons.h>
char username[UNLEN+1];
GetUserName(username, UNLEN+1);
但是我得到了这个错误:'GetUserNameA':无法将参数2从'int'转换为'LPDWORD'
最佳答案
按照documentation,传入的长度必须是指向双字的指针,因为该函数会根据返回的内容对其进行更改。
因此,您应该具有以下内容:
TCHAR username[UNLEN+1]; // TCHAR to allow for MBCS and Unicode
DWORD len = UNLEN + 1; // if you're in to that sort of thing :-)
GetUserName(username, &len);