SERVER_TRANSPORT_INFO_2 構造体 (lmserver.h)
SERVER_TRANSPORT_INFO_2構造体には、トランスポート名とアドレスなど、指定されたトランスポート プロトコルに関する情報が含まれています。 この情報レベルは、 NetServerTransportAddEx 関数に対してのみ有効です。
構文
typedef struct _SERVER_TRANSPORT_INFO_2 {
DWORD svti2_numberofvcs;
LMSTR svti2_transportname;
LPBYTE svti2_transportaddress;
DWORD svti2_transportaddresslength;
LMSTR svti2_networkaddress;
LMSTR svti2_domain;
ULONG svti2_flags;
} SERVER_TRANSPORT_INFO_2, *PSERVER_TRANSPORT_INFO_2, *LPSERVER_TRANSPORT_INFO_2;
メンバー
svti2_numberofvcs
型: DWORD
svti2_transportname メンバーによって指定されたトランスポート プロトコルを使用しているサーバーに接続されているクライアントの数。
svti2_transportname
種類: LMSTR
トランスポート デバイスの名前を含む NULL で終わる文字列へのポインター。例えば
\Device\NetBT_Tcpip_{2C9725F4-151A-11D3-AEEC-C3B211BD350B}
_WIN32_WINNTまたはFORCE_UNICODEが定義されている場合、この文字列は Unicode です。
svti2_transportaddress
種類: LPBYTE
svti2_transportname メンバーによって指定されたトランスポート デバイスでサーバーが使用しているアドレスを含む変数へのポインター。
このメンバーは、通常、サーバーが使用している NetBIOS 名です。 これらのインスタンスでは、名前の長さは 16 文字、最後の文字は空白文字 (0x20) である必要があります。
svti2_transportaddresslength
型: DWORD
svti2_transportaddress メンバーの長さ (バイト単位)。 NetBIOS 名の場合、このメンバーの値は 16 (10 進数) です。
svti2_networkaddress
種類: LMSTR
ネットワーク アダプターが使用しているアドレスを含む NULL で終わる文字列へのポインター。 文字列はトランスポート固有です。
この値は、 NetServerTransportEnum 関数の呼び出しでのみ取得できます。 この値は、NetServerTransportAdd 関数または NetServerTransportAddEx 関数の呼び出しでは設定できません)。
_WIN32_WINNTまたはFORCE_UNICODEが定義されている場合、この文字列は Unicode です。
svti2_domain
種類: LMSTR
サーバーが存在を読み上げるドメインの名前を含む NULL で終わる文字列へのポインター。 ( NetServerTransportEnum を呼び出すとき、このメンバーはサーバーが存在を発表するドメインの名前です)。
_WIN32_WINNTまたはFORCE_UNICODEが定義されている場合、この文字列は Unicode です。
svti2_flags
種類: ULONG
このメンバーは、 Lmserver.h ヘッダー ファイルで定義されている次のビット値の組み合わせにすることができます。
解説
SERVER_TRANSPORT_INFO_2構造体は、指定されたサーバーをトランスポート プロトコルにバインドするために、NetServerTransportAddEx 関数によって使用されます。
SVTI2_REMAP_PIPE_NAMES値の使用例を次に示します。 NetServerTransportAddEx 関数を呼び出してサーバーにトランスポートを追加し、svti2_transportaddress メンバーの "MyServer" のアドレスを指定し、svti2_flagsメンバーにSVTI2_REMAP_PIPE_NAMESします。 クライアントが "\MyServer" で "Pipe" を開こうとすると、クライアントは実際には $$MyServer\Pipe を開きます。
Windows Server 2008 および Windows Vista 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_503のshi503_servername メンバーで指定されたリモート サーバーは、NetServerTransportAddEx 関数をスコープ付きエンドポイントとして使用してトランスポート プロトコルにバインドされている必要があります。 SVTI2_SCOPED_NAME フラグは、トランスポート プロトコルのSERVER_TRANSPORT_INFO_2またはSERVER_TRANSPORT_INFO_3構造体のshi503_servername メンバーで指定されている必要があります。 NetShareDelEx 関数は、スコープ付き共有を削除するために使用されます。 NetShareGetInfo 関数と NetShareSetInfo 関数は、スコープ付き共有の情報を取得および設定するために使用されます。
スコープ付きエンドポイントは、通常、クラスター名前空間によって使用されます。
要件
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
Header | lmserver.h (Include Lm.h) |