Share via


Win32_Share クラスの Create メソッド

WMI クラス作成メソッドは、サーバー リソースの共有を開始します。

このトピックでは、マネージド オブジェクト形式 (MOF) 構文を使用します。 このメソッドの使用方法の詳細については、「メソッドの 呼び出し」を参照してください。

構文

uint32 Create(
  [in]           string                   Path,
  [in]           string                   Name,
  [in]           uint32                   Type,
  [in, optional] uint32                   MaximumAllowed,
  [in, optional] string                   Description,
  [in, optional] string                   Password,
  [in, optional] Win32_SecurityDescriptor Access
);

パラメーター

Path [in]

Windows 共有のローカル パス。

例: "C:\Program Files"。

Name [in]

Windows を実行しているコンピューター システムで共有として設定されたパスにエイリアスを渡します。

たとえば、"public" です。

「in」と入力します

共有するリソースの種類を渡します。 種類には、ディスク ドライブ、印刷キュー、プロセス間通信 (IPC)、および一般的なデバイスが含まれます。 次のいずれかの値を指定できます。

ディスク ドライブ (0)

印刷キュー (1)

デバイス (2)

IPC (3)

ディスク ドライブの管理 (2147483648)

印刷キュー 管理 (2147483649)

デバイス 管理 (2147483650)

IPC 管理 (2147483651)

MaximumAllowed [in, optional]

このリソースを同時に使用できるユーザーの最大数に制限します。

例: 10。 このパラメーターは省略可能です。

説明 [in, optional]

共有されているリソースを説明するオプションのコメント。 このパラメーターは省略可能です。

Password [in, optional]

共有リソースのパスワード (サーバーが共有レベルのセキュリティで実行されている場合)。 サーバーがユーザー レベルのセキュリティで実行されている場合、このパラメーターは無視されます。 このパラメーターは省略可能です。

Access [in, optional]

ユーザー レベルのアクセス許可のセキュリティ記述子。 セキュリティ記述子には、リソースのアクセス許可、所有者、およびアクセス機能に関する情報が含まれています。 このパラメーターが指定されていない場合、または NULL の場合、Everyone は共有への読み取りアクセス権を持ちます。 詳細については、「セキュリティ保護可能なオブジェクトのWin32_SecurityDescriptorとアクセス セキュリティの変更」を参照してください。

戻り値

次の一覧に記載されている値の 1 つ、またはエラーを示すその他の値を返します。 その他のエラー コードについては、「 WMI エラー定数」 または 「WbemErrorEnum」を参照してください。 一般的な HRESULT 値については、「 システム エラー コード」を参照してください。

成功 (0)

アクセスが拒否されました (2)

不明なエラー (8)

無効な名前 (9)

無効なレベル (10)

パラメーターが無効です (21)

重複する共有 (22)

リダイレクトされたパス (23)

不明なデバイスまたはディレクトリ (24)

ネット名が見つかりません (25)

その他 (26 4294967295)

注釈

Create は静的メソッドです。

Create を正常 に実行できるのは、Administrators または Account Operators ローカル グループのメンバー、または Communication、Print、または Server オペレーター グループ メンバーシップを持つメンバーのみです。 Print オペレーターは、プリンター キューのみを追加できます。 Communication オペレーターは、通信デバイス キューのみを追加できます。

ファイル共有のエクスポートとインポートの PowerShell サンプルでは、ファイル共有のエクスポートとインポートを行い、共有のアクセス許可を設定します。 同様に、 共有の作成とアクセス許可の設定 のサンプルでも、新しい共有が作成され、共有のアクセス許可が設定されます。

次の PowerShell コードは、共有を作成します。

# create pointer to class
$comp=[WMICLASS]"Win32_share"

# create a new share
$comp.create("c:\","mynewshare",0)

# see results
gwmi win32_share 

前のコード サンプルでは、次が返されます。

__GENUS          : 2
__CLASS          : __PARAMETERS
__SUPERCLASS     : 
__DYNASTY        : __PARAMETERS
__RELPATH        : 
__PROPERTY_COUNT : 1
__DERIVATION     : {}
__SERVER         : 
__NAMESPACE      : 
__PATH           : 
ReturnValue      : 2
PSComputerName   : 

Name        : ADMIN$
Path        : C:\Windows
Description : Remote Admin

Name        : C$
Path        : C:\
Description : Default share

Name        : CCMLOGS$
Path        : C:\Windows\CCM\Logs
Description : Public Share

Name        : ccmsetup$
Path        : C:\Windows\ccmsetup
Description : Public Share

Name        : Drop
Path        : C:\Drop
Description : 

Name        : IPC$
Path        : 
Description : Remote IPC

Name        : Share
Path        : C:\Share
Description : 

次の C# コード サンプルでは、create メソッドを呼び出す方法について説明します。

private static void makeShare(string servername, string filepath, string sharename)
{
try
 {
 // assemble the string so the scope represents the remote server
 string scope = string.Format("\\\\{0}\\root\\cimv2", servername);

 // connect to WMI on the remote server
 ManagementScope ms = new ManagementScope(scope);

 // create a new instance of the Win32_Share WMI object
 ManagementClass cls = new ManagementClass("Win32_Share");

 // set the scope of the new instance to that created above
 cls.Scope = ms;

 // assemble the arguments to be passed to the Create method
 object[] methodargs = { filepath, sharename, "0" };

 // invoke the Create method to create the share
 object result = cls.InvokeMethod("Create", methodargs);
 }
catch (SystemException e)
 {
  Console.WriteLine("Error attempting to create share {0}:", sharename);
  Console.WriteLine(e.Message);
 }

}

要件

要件
サポートされている最小のクライアント
Windows Vista
サポートされている最小のサーバー
Windows Server 2008
名前空間
Root\CIMV2
MOF
CIMWin32.mof
[DLL]
CIMWin32.dll

こちらもご覧ください

オペレーティング システム クラス

Win32_Share