问:怎样用C语言获系统登录用户名?????

来源:百度知道 编辑:UC知道 时间:2024/09/21 00:46:22
加一个用命令行有没有办法获得呢》????》?
二楼说的不错,把用户名是不是存放到那个变量了。
高手把你的QQ留下。好不好》
我的是:526924266
加一个用命令行有没有办法获得呢加一个用命令行有没有办法获得呢加一个用命令行有没有办法获得呢加一个用命令行有没有办法获得呢加一个用命令行有没有办法获得呢加一个用命令行有没有办法获得呢加一个用命令行有没有办法获得呢加一个用命令行有没有办法获得呢加一个用命令行有没有办法获得呢加一个用命令行有没有办法获得呢加一个用命令行有没有办法获得呢

命令行下可以使用:
set username
来获取当前登陆用户名。

使用程序实现:

#include <windows.h>
#include <iostream.h>

void main()
{
DWORD nSize = 256;
char* str = new char[nSize];
ExpandEnvironmentStrings("%USERNAME%",str,nSize);
/* 或者
GetUserName(str,&nSize);
*/
cout << str << endl;
delete [] str;
}

P.S 楼上的MSDN版本太老了……

你自己说的用C语言实现的,加什么命令行呢?命令行是dos的范畴.如果您的意思是加一个函数吧,我的答案就是了.

太老了?难道在您的系统上不能用么?
ExpandEnvironmentStrings("%USERNAME%",str,nSize); 获得的是系统自定义字符串%USERNAME%的内容吧,和真正的系统用户名还不是很一样啊.比如可以进入系统属性里面篡改

BOOL GetUserName(
LPTSTR lpBuffer, // name buffer
LPDWORD nSize // size of name buffer
);
The GetUserName function retrieves the user name of the current thread. This is the name of the user currently logged