関数を共有する
ネットワーク管理共有機能は、共有リソースを制御します。 共有リソースは、ネットワーク上のユーザーとアプリケーションがアクセスできるサーバー上のローカル リソース (ディスク ディレクトリ、印刷デバイス、名前付きパイプなど) です。
共有関数を次に示します。
機能 | 説明 |
---|---|
NetShareAdd | サーバー上のリソースを共有します。 |
NetShareCheck | サーバーがデバイスを共有しているかどうかを照会します。 |
NetShareDel | サーバーの共有リソースの一覧から共有名を削除します。 |
NetShareEnum | サーバー上の各共有リソースに関する共有情報を取得します。 |
NetShareGetInfo | サーバー上の指定された共有リソースに関する情報を取得します。 |
NetShareSetInfo | 共有リソースのパラメーターを設定します。 |
これらの共有機能は、サーバー メッセージ ブロック (LAN マネージャー) サーバー上の共有にのみ適用されます。 これらの共有関数は、分散ファイル システム (DFS) 共有をサポートしていません。 たとえば、 NetShareGetInfo 関数は、SMB サーバー上の指定された共有リソースの情報のみを取得できます。 別のネットワーク プロバイダー (WebDAV や DFS 共有など) を使用して共有の情報を取得するには、 WNetGetConnection 関数を使用します。
NetShareAdd 関数を使用すると、ユーザーまたはアプリケーションは、指定した共有名を使用して特定の種類のリソースを共有できます。 NetShareAdd 関数では、リソースを共有するために共有名とローカル デバイス名が必要です。 リソースにアクセスするには、ユーザーまたはアプリケーションにサーバー上のアカウントが必要です。
共有に関連付けるセキュリティ記述子を指定することもできます。 セキュリティ記述子は、共有を介してファイルへのアクセスを許可するユーザーと、アクセスの種類を指定します。 NetShareAdd または NetShareSetInfo を呼び出すときに、SHARE_INFO_502情報レベルでSECURITY_DESCRIPTORを指定します。 NetShareSetInfo では 、 SHARE_INFO_1501 情報レベルがサポートされます。 セキュリティ記述子の詳細については、「Access Control」を参照してください。
ネットワーク管理機能では、プロセス間通信 (IPC) とサーバーのリモート管理に、次の特殊な共有名が使用されます。
- プロセス間通信用に予約された IPC$
- ADMIN$ (リモート管理用に予約済み)
- A$、B$、C$ (およびその他のローカル ディスク名とその後にドル記号) がローカル ディスク デバイスに割り当てられます
サーバー上の共有リソースに対して行われたすべての接続を一覧表示したり、特定のコンピューターから確立されたすべての接続を一覧表示したりするには、 NetConnectionEnum 関数を呼び出します。 NetConnectionEnum は、CONNECTION_INFO_0およびCONNECTION_INFO_1情報レベルで呼び出すことができます。
共有関数は次の情報レベルで使用できますが、一部の共有レベルは一部の共有関数にのみ適用されます。
- SHARE_INFO_0
- SHARE_INFO_1
- SHARE_INFO_2
- SHARE_INFO_501
- SHARE_INFO_502
- SHARE_INFO_503
- SHARE_INFO_1004
- SHARE_INFO_1005
- SHARE_INFO_1006
- SHARE_INFO_1501
詳細については、特定の共有機能のドキュメントを参照してください。
Active Directory のプログラミングを行っている場合は、特定の Active Directory サービス インターフェイス (ADSI) メソッドを呼び出して、ネットワーク管理共有関数を呼び出すことで実現できるのと同じ機能を実現できる場合があります。 詳細については、「 IADsFileShare」を参照してください。