_NetUserAdd@16无法解决

_NetUserAdd@16 cannot be resolved

本文关键字:解决 NetUserAdd@16      更新时间:2023-10-16

我试图通过C++添加用户。我不得不说,我根本没有VS和C++的任何经验。因此,我发现了函数"NetUserAdd",并注意到了一些例子,并为它构建了自己的函数。但我的Visual Studio给了我第一个错误:

错误LNK2019:Verweis auf nicht aufgelöstes externes Symbol"_NetUserAdd@16"在函数"_main"中。

它是用德语写的,上面写着"_NetUserAdd@16"无法解决。有什么想法吗?我在任何地方都找不到问题。。。

 #ifdef _UNICODE
    typedef wchar_t TCHAR;
    #else
    typedef char TCHAR;
    #endif // _UNICODE
typedef const TCHAR* LPCTSTR;
#include <stdio.h>
#include <windows.h> 
#include <lm.h>
using namespace std;
void main()
{
    USER_INFO_1 ui;
    DWORD dwLevel = 1;
    DWORD dwError = 0;
    NET_API_STATUS nStatus;
    LPWSTR username = L"user";
    LPWSTR password = L"test234";
    ui.usri1_name = username;
    ui.usri1_password = password;
    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;
    //
    // Call the NetUserAdd function, specifying level 1.
    //
    nStatus = NetUserAdd(NULL,
        dwLevel,
        (LPBYTE)&ui,
        &dwError);

    if (nStatus == NERR_Success)
        fwprintf(stderr, L"User %s has been successfully added on %sn",
        username, NULL);
    //
    // Otherwise, print the system error.
    //
    else
    {
        fprintf(stderr, "A system error has occurred: %dn", nStatus);
    }

}

文档解释了您需要链接到Netapi32.lib。看来你没能做到这一点。