NetServerTransportAddEx 関数 (lmserver.h)

NetServerTransportAddEx 関数は、指定されたサーバーをトランスポート プロトコルにバインドします。 この拡張関数を使用すると、呼び出し元アプリケーションは 、SERVER_TRANSPORT_INFO_0SERVER_TRANSPORT_INFO_1SERVER_TRANSPORT_INFO_2、またはSERVER_TRANSPORT_INFO_3情報レベル 指定できます。

構文

NET_API_STATUS NET_API_FUNCTION NetServerTransportAddEx(
  [in] LMSTR  servername,
  [in] DWORD  level,
  [in] LPBYTE bufptr
);

パラメーター

[in] servername

関数を実行するリモート サーバーの名前を指定する文字列へのポインター。 このパラメーターが NULL の場合は、ローカル コンピューターが使用されます。

[in] level

データの情報レベルを示す値を指定します。 このパラメーターには、次の値のいずれかを指定できます。

説明
0
ネットワーク上の名前、アドレス、場所など、トランスポート プロトコルに関する情報を指定します。 bufptr パラメーターは、SERVER_TRANSPORT_INFO_0構造体を指します。
1
名前、アドレス、ネットワークの場所、ドメインなど、トランスポート プロトコルに関する情報を指定します。 bufptr パラメーターは、SERVER_TRANSPORT_INFO_1構造体を指します。
2
レベル 1 と同じ情報を指定し、 svti2_flags メンバーを追加します。 bufptr パラメーターは、SERVER_TRANSPORT_INFO_2構造体を指します。
3
資格情報を追加して、レベル 2 と同じ情報を指定します。 bufptr パラメーターは、SERVER_TRANSPORT_INFO_3構造体を指します。

[in] bufptr

データを含むバッファーへのポインター。 このデータの形式は 、level パラメーターの値によって異なります。

詳細については、「 ネットワーク管理機能バッファー」を参照してください。

戻り値

関数が成功した場合、戻り値はNERR_Success。

関数が失敗した場合、戻り値は次のいずれかのエラー コードになります。

リターン コード 説明
ERROR_ACCESS_DENIED
ユーザーには、要求された情報へのアクセス権がありません。
ERROR_DUP_NAME
重複する名前がネットワーク上に存在します。
ERROR_INVALID_DOMAINNAME
ドメイン名がネットワーク上で見つかりませんでした。
ERROR_INVALID_LEVEL
level パラメーターに指定された値が無効です。
ERROR_INVALID_PARAMETER
パラメーターが無効です。

このエラーは、bufptr パラメーターが指すSERVER_TRANSPORT_INFO_0SERVER_TRANSPORT_INFO_1SERVER_TRANSPORT_INFO_2、または SERVER_TRANSPORT_INFO_3 構造体のトランスポート名またはトランスポート アドレス メンバーが NULL の場合に返されます。 このエラーは、bufptr パラメーターが指すSERVER_TRANSPORT_INFO_0SERVER_TRANSPORT_INFO_1SERVER_TRANSPORT_INFO_2、または SERVER_TRANSPORT_INFO_3 構造体のトランスポート アドレス長メンバーが、MAX_PATH (Windef.h ヘッダー ファイルで定義) より 0 以上である場合にも返されます。 このエラーは、SERVER_TRANSPORT_INFO_2の flags メンバー、または bufptr パラメーターによって指SERVER_TRANSPORT_INFO_3構造体に無効な値が含まれている場合にも返されます。

このエラーは、他の無効なパラメーターについても返されます。

ERROR_NOT_ENOUGH_MEMORY
十分なメモリがありません。

解説

NetServerTransportAddEx 関数を正常に実行できるのは、Administrators または Server Operators ローカル グループのメンバーだけです。

NetServerTransportAddEx 関数の呼び出しを使用してサーバーにトランスポート プロトコルを追加した場合、サーバーの再起動または再起動後も接続は維持されません。

NetServerComputerNameAdd 関数はユーティリティ関数です。 NetServerTransportEnum 関数と NetServerTransportAddEx 関数の機能を組み合わせて、エミュレートされたサーバー名を指定できます。

Windows Server 2008 および Windows Vista Service Pack 1 (SP1) では、Windows リモート ファイル サーバー (SRV) に登録されているすべての名前は、スコープ付き名前またはスコープなしの名前として指定されます。 その後、システムに追加されるすべての共有は、スコープのないすべての名前にアタッチされるか、単一のスコープ名にアタッチされます。 スコープ機能を使用するアプリケーションは、スコープ付きエンドポイントとして新しい名前を登録してから、適切なスコープで共有を作成する必要があります。 このように、ネットワーク管理およびネットワーク共有管理機能の従来の使用は、共有と名前をスコープ外の名前として登録し続けるので、いかなる影響も受けられません。

スコープ付きエンドポイントは、level パラメーターが 2 に設定された NetServerTransportAddEx 関数を呼び出し、bufptr パラメーターがメンバーに設定されたSVTI2_SCOPED_NAMEビット値を持つSERVER_TRANSPORT_INFO_2構造体svti2_flags指すことによって作成されます。 スコープ付きエンドポイントは、level パラメーターが 3 に設定された NetServerTransportAddEx 関数を呼び出し、bufptr パラメーターがメンバーに設定されたSVTI2_SCOPED_NAMEビット値を持つSERVER_TRANSPORT_INFO_3構造体svti3_flags指すことでも作成されます。

トランスポートに対してSVTI2_SCOPED_NAMEビット値が設定されている場合、NetShareAdd 関数を使用して、対応するサーバー名 (SHARE_INFO_503 構造体のshi503_servername メンバー) をスコープ指定して共有を追加できます。 SVTI2_SCOPED_NAME ビット値に登録されているトランスポートと、 メンバー に指定された名前 shi503_servername 場合、スコープ指定された方法で共有の追加は成功しません。

NetShareAdd 関数は、servername パラメーターで指定されたリモート サーバーにスコープ付き共有を追加するために使用されます。 bufptr パラメーターで渡されるSHARE_INFO_503shi503_servername メンバーで指定されたリモート サーバーは、NetServerTransportAddEx 関数をスコープ付きエンドポイントとして使用してトランスポート プロトコルにバインドされている必要があります。 SVTI2_SCOPED_NAME フラグは、トランスポート プロトコルのSERVER_TRANSPORT_INFO_2またはSERVER_TRANSPORT_INFO_3構造体のshi503_servername メンバーで指定されている必要があります。 NetShareDelEx 関数は、スコープ付き共有を削除するために使用されます。 NetShareGetInfo 関数と NetShareSetInfo 関数は、スコープ付き共有の情報を取得および設定するために使用されます。

スコープ付きエンドポイントは、通常、クラスター名前空間によって使用されます。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー lmserver.h (Include Lm.h)
Library Netapi32.lib
[DLL] Netapi32.dll

関連項目

NetServerComputerNameAdd

NetServerComputerNameDel

NetServerTransportAdd

NetServerTransportDel

NetServerTransportEnum

NetShareAdd

NetShareDelEx

NetShareGetInfo

NetShareSetInfo

ネットワーク管理機能

ネットワーク管理の概要

SERVER_TRANSPORT_INFO_0

SERVER_TRANSPORT_INFO_1

SERVER_TRANSPORT_INFO_2

SERVER_TRANSPORT_INFO_3

SHARE_INFO_503

サーバーとワークステーションのトランスポート機能