gpt4 book ai didi

c++ - 帮助在 C++ 中使用 NetuserAdd() 和 NetLocalGroupAddMembers()

转载 作者:太空宇宙 更新时间:2023-11-04 14:28:06 28 4
gpt4 key购买 nike

所以我想我差不多明白了。我用一个函数创建了我的虚拟帐户,并编写了第二个函数以将其添加到远程桌面组。问题是,管理员帐户是登录的帐户,所以我不确定如何指定要添加到组中的帐户。这是我的代码...

正在正确创建用户...

 void AddRDPUser()
{
USER_INFO_1 ui;
DWORD dwLevel = 1;
DWORD dwError = 0;
NET_API_STATUS nStatus;

ui.usri1_name = L"BrettXFactor";
ui.usri1_password = L"XfactorsServer96";
ui.usri1_priv = USER_PRIV_USER;
ui.usri1_home_dir = NULL;
ui.usri1_comment = NULL;
ui.usri1_flags = UF_SCRIPT;
ui.usri1_script_path = NULL;

nStatus = NetUserAdd(NULL, dwLevel, (LPBYTE)&ui, &dwError);
}

但是我不知道如何指定将他们添加到这个组,因为他们没有登录。任何帮助将不胜感激

 void AddToGroup()
{
LOCALGROUP_MEMBERS_INFO_3 lgmi3;
DWORD dwLevel = 3;
DWORD totalEntries = 1;
NET_API_STATUS nStatus;
LPCWSTR TargetGroup = L"Remote Desktop Users";

LPSTR sBuffer = NULL;
memset(sBuffer, 0, 255);
DWORD nBuffSize = sizeof(sBuffer);

if(GetUserNameEx(NameDnsDomain, sBuffer, &nBuffSize)==0)
{
Msg("Failed to add User to Group\n");
return;
}

LPWSTR user_name = (LPWSTR)sBuffer;
lgmi3.lgrmi3_domainandname = user_name;

nStatus = NetLocalGroupAddMembers(NULL, TargetGroup, 3,
(LPBYTE)&lgmi3, totalEntries);
}

最佳答案

无意冒犯,但您似乎根本不知道自己在用代码做什么。您没有将当前用户添加到目标组;您要将刚刚创建的用户添加到其中吗?那你为什么要调用 GetUserNameEx?只需使用新用户的名称:

lgmi3.lgrmi3_domainandname = L"BrettXFactor";

关于c++ - 帮助在 C++ 中使用 NetuserAdd() 和 NetLocalGroupAddMembers(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2076817/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com