| Platform SDK: Network Management |
The NetWkstaUserSetInfo function sets the user-specific information about the configuration elements for a workstation.
The NetWkstaUserSetInfo function only works locally.
NET_API_STATUS NetWkstaUserSetInfo( LPWSTR reserved, DWORD level, LPBYTE buf, LPDWORD parm_err );
| Value | Meaning |
|---|---|
| 1 | Specifies information about the workstation, including the name of the current user and the domains accessed by the workstation. The buf parameter points to a WKSTA_USER_INFO_1 structure. |
| 1101 | Specifies domains browsed by the workstation. The buf parameter points to a WKSTA_USER_INFO_1101 structure. |
If the function succeeds, the return value is NERR_Success.
If the function fails, the return value can be one of the following error codes.
| Value | Meaning |
|---|---|
| ERROR_INVALID_LEVEL | The level parameter is invalid. |
| ERROR_INVALID_PARAMETER | One of the function parameters is invalid. |
Domain names in the wkui1101_oth_domains member of the WKSTA_USER_INFO_1101 structure are separated by spaces. An empty list is valid. A null pointer means to leave the member unmodified. The wkui1101_oth_domains member cannot be set with MS-DOS. When setting this element, NetWkstaUserSetInfo rejects the request if the name list was invalid or if a name could not be added to one or more of the network adapters managed by the system.
If the NetWkstaUserSetInfo function returns ERROR_INVALID_PARAMETER, you can use the parm_err parameter to indicate the member of the workstation user information structure that is invalid. (A workstation user information structure begins with WKSTA_USER_INFO_ and its format is specified by the level parameter.) The following table lists the value that can be returned in the parm_err parameter and the corresponding structure member that is in error. (The prefix wkui*_ indicates that the member can begin with multiple prefixes, for example, wkui0_ or wkui1_.)
| Value | Member |
|---|---|
| WKSTA_OTH_DOMAINS_PARMNUM | wkui*_oth_domains |
The following code sample demonstrates how to set user-specific information for a workstation using a call to the NetWkstaUserSetInfo function, specifying information level 1101 (WKSTA_USER_INFO_1101).
#ifndef UNICODE
#define UNICODE
#endif
#include <stdio.h>
#include <windows.h>
#include <lm.h>
int wmain(int argc, wchar_t *argv[])
{
DWORD dwLevel = 1101;
WKSTA_USER_INFO_1101 wui;
NET_API_STATUS nStatus;
if (argc != 2)
{
fwprintf(stderr, L"Usage: %s OtherDomains\n", argv[0]);
exit(1);
}
//
// Fill in the WKSTA_USER_INFO_1101 structure member.
//
wui.wkui1101_oth_domains = argv[1];
//
// Call the NetWkstaUserSetInfo function
// to change the list of domains browsed by
// the workstation; specify level 1101.
//
nStatus = NetWkstaUserSetInfo(NULL,
dwLevel,
(LPBYTE)&wui,
NULL);
//
// Display the result of the call.
//
if (nStatus == NERR_Success)
fprintf(stderr, "Workstation user information has been changed\n");
else
fprintf(stderr, "A system error has occurred: %d\n", nStatus);
return 0;
}
Windows NT/2000: Requires Windows NT 3.1 or later.
Windows 95/98: Unsupported.
Header: Declared in Lmwksta.h; include Lm.h.
Library: Use Netapi32.lib.
Network Management Overview, Network Management Functions, Workstation and Workstation User Functions, NetWkstaUserGetInfo, WKSTA_USER_INFO_1, WKSTA_USER_INFO_1101