NetWkstaUserSetInfo 関数 (lmwksta.h)
NetWkstaUserSetInfo 関数は、ワークステーションの構成要素に関するユーザー固有の情報を設定します。
構文
NET_API_STATUS NET_API_FUNCTION NetWkstaUserSetInfo(
LMSTR reserved,
[in] DWORD level,
[in] LPBYTE buf,
[out] LPDWORD parm_err
);
パラメーター
reserved
このパラメーターは 0 に設定する必要があります。
[in] level
データの情報レベルを指定します。 このパラメーターには、次の値のいずれかを指定できます。
値 | 説明 |
---|---|
|
ワークステーションに関する情報 (現在のユーザーの名前やワークステーションがアクセスするドメインを含む) を指定します。 buf パラメーターは、WKSTA_USER_INFO_1構造体を指します。 |
|
ワークステーションによって参照されるドメインを指定します。 buf パラメーターは、WKSTA_USER_INFO_1101構造体を指します。 |
[in] buf
データを指定するバッファーへのポインター。 このデータの形式は、 level パラメーターの値によって異なります。 詳細については、「 ネットワーク管理関数バッファー」を参照してください。
[out] parm_err
ERROR_INVALID_PARAMETER エラーの原因となる最初のパラメーターのインデックスを受け取る値へのポインター。 このパラメーターが NULL の場合、エラー時にインデックスは返されません。
戻り値
関数が成功した場合、戻り値はNERR_Success。
関数が失敗した場合、戻り値には次のいずれかのエラー コードを指定できます。
リターン コード | 説明 |
---|---|
|
level パラメーターが無効です。 |
|
関数パラメーターの 1 つが無効です。 |
解説
NetWkstaUserSetInfo 関数はローカルでのみ機能します。 管理者グループのメンバーシップが必要です。
WKSTA_USER_INFO_1101構造体のwkui1101_oth_domains メンバー内のドメイン名は、スペースで区切られます。 空のリストは有効です。 NULL ポインターは、メンバーを変更しないで残すことを意味します。 wkui1101_oth_domains メンバーを MS-DOS で設定することはできません。 この要素を設定すると、名前リストが無効な場合、またはシステムによって管理されている 1 つ以上のネットワーク アダプターに名前を追加できなかった場合、 NetWkstaUserSetInfo は要求を拒否します。
NetWkstaUserSetInfo 関数がERROR_INVALID_PARAMETERを返す場合は、parm_err パラメーターを使用して、ワークステーションのユーザー情報構造体のメンバーが無効であることを示すことができます。 (ワークステーションのユーザー情報構造はWKSTA_USER_INFO_で始まり、その形式は level パラメーターで指定されます)。次の表に、 parm_err パラメーターで返すことができる値と、エラーが発生している対応する構造体メンバーを示します。 (プレフィックス wkui*_ は、メンバーが複数のプレフィックス (wkui0_やwkui1_など) で始めることができることを示します。
値 | メンバー |
---|---|
WKSTA_OTH_DOMAINS_PARMNUM | wkui*_oth_domains |
例
次のコード サンプルでは、 NetWkstaUserSetInfo 関数の呼び出しを使用して、情報レベル 1101 ( WKSTA_USER_INFO_1101) を指定して、ワークステーションのユーザー固有の情報を設定する方法を示します。
#ifndef UNICODE
#define UNICODE
#endif
#pragma comment(lib, "netapi32.lib")
#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 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | lmwksta.h (include Lm.h) |
Library | Netapi32.lib |
[DLL] | Netapi32.dll |