ネットワーク管理共有関数は、共有リソースを制御します。 共有リソースは、ネットワーク上のユーザーとアプリケーションがアクセスできるサーバー上のローカル リソース (ディスク ディレクトリ、印刷デバイス、名前付きパイプなど) です。
共有関数の一覧を次に示します。
| 機能 | 形容 |
|---|---|
| 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をする」を参照してください。