Criar método da classe Win32_Share
O método de classe CreateWMI inicia o compartilhamento para um recurso de servidor.
Este tópico usa a sintaxe MOF (Managed Object Format). Para obter mais informações sobre como usar esse método, consulte Chamando um método.
Sintaxe
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
);
Parâmetros
-
Caminho [in]
-
Caminho local do compartilhamento do Windows.
Exemplo, "C:\Arquivos de Programas".
-
Nome [in]
-
Passa o alias para um caminho configurado como um compartilhamento em um sistema de computador que executa o Windows.
Exemplo, "public".
-
Digite [in]
-
Passa o tipo de recurso que está sendo compartilhado. Os tipos incluem unidades de disco, filas de impressão, IPC (comunicações entre processos) e dispositivos gerais. Pode ser um dos valores a seguir.
-
Unidade de Disco (0)
-
Fila de Impressão (1)
-
Dispositivo (2)
-
IPC (3)
-
Administração de Unidade de Disco (2147483648)
-
Administração de Fila de Impressão (2147483649)
-
Administração de dispositivo (2147483650)
-
IPC Administração (2147483651)
MaximumAllowed [in, opcional]
Limite o número máximo de usuários permitidos para usar simultaneamente esse recurso.
Exemplo: 10. Esse parâmetro é opcional.
Descrição [in, opcional]
Comentário opcional para descrever o recurso que está sendo compartilhado. Esse parâmetro é opcional.
Senha [in, opcional]
Senha (quando o servidor está em execução com segurança no nível de compartilhamento) para o recurso compartilhado. Se o servidor estiver em execução com segurança no nível do usuário, esse parâmetro será ignorado. Esse parâmetro é opcional.
Acesso [in, opcional]
Descritor de segurança para permissões de nível de usuário. Um descritor de segurança contém informações sobre as permissões, o proprietário e os recursos de acesso do recurso. Se esse parâmetro não for fornecido ou for NULL, Todos têm acesso de leitura ao compartilhamento. Para obter mais informações, consulte Win32_SecurityDescriptor e Alterando a segurança de acesso em objetos protegíveis.
Valor retornado
Retorna um dos valores listados na lista a seguir ou qualquer outro valor para indicar um erro. Para obter códigos de erro adicionais, consulte Constantes de erro WMI ou WbemErrorEnum. Para obter valores gerais de HRESULT , consulte Códigos de erro do sistema.
-
Sucesso (0)
-
Acesso negado (2)
-
Falha desconhecida (8)
-
Nome inválido (9)
-
Nível inválido (10)
-
Parâmetro inválido (21)
-
Compartilhamento duplicado (22)
-
Caminho redirecionado (23)
-
Dispositivo ou diretório desconhecido (24)
-
Nome líquido não encontrado (25)
-
Outro (26 4294967295)
Comentários
Create é um método estático.
Somente os membros do grupo local Administradores ou Operadores de Conta ou aqueles com associação de grupo de operadores de Comunicação, Impressão ou Servidor podem executar Com êxito Criar. O operador Print só pode adicionar filas de impressora. O operador comunicação só pode adicionar filas de dispositivo de comunicação.
Exemplos
O exemplo exportar e importar compartilhamentos de arquivos do PowerShell exporta e importa compartilhamentos de arquivos e define permissões de compartilhamento. Da mesma forma, o exemplo Criar um Compartilhamento e Definir Permissões também cria um novo compartilhamento e define as permissões de compartilhamento.
O código do PowerShell a seguir cria um compartilhamento.
# create pointer to class
$comp=[WMICLASS]"Win32_share"
# create a new share
$comp.create("c:\","mynewshare",0)
# see results
gwmi win32_share
O exemplo de código anterior retorna o seguinte:
__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 :
O exemplo de código C# a seguir descreve como chamar o método 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);
}
}
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte |
Windows Vista |
Servidor mínimo com suporte |
Windows Server 2008 |
Namespace |
Root\CIMV2 |
MOF |
|
DLL |
|