Método Compress da classe Win32_Directory

O método de classe WMICompress compacta o arquivo de entrada de diretório lógico (ou diretório) especificado no caminho do objeto.

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 Compress();

Parâmetros

Esse método não tem parâmetros.

Valor retornado

Retorna um valor de 0 (zero) se o arquivo foi compactado com êxito e qualquer outro número para indicar um erro.

0

A solicitação foi bem-sucedida.

2

O acesso foi negado.

8

Ocorreu uma falha não especificada.

9

O nome especificado não era válido.

10

O objeto especificado já existe.

11

O sistema de arquivos não é um NTFS.

12

A plataforma não é o Windows.

13

A unidade não é a mesma.

14

O diretório não está vazio.

15

Houve uma violação de compartilhamento.

16

O arquivo inicial especificado não era válido.

17

Um privilégio necessário para a operação não é mantido.

21

Um parâmetro especificado não é válido.

Comentários

A compactação fornece uma maneira de liberar espaço de armazenamento adicional em uma unidade de disco sem comprar um novo hardware e sem remover arquivos ou pastas. Dependendo do tamanho do disco rígido e do tipo de arquivos armazenados nesse disco, você poderá recuperar centenas de megabytes de espaço em disco e, portanto, impedir a necessidade de comprar um novo disco rígido e colocar o computador offline até que a nova unidade seja instalada.

O método Compress compacta todos os arquivos e subpastas dentro de uma pasta especificada. Além disso, a classe também inclui um método Uncompress que remove a compactação de todos os arquivos e subpastas em uma pasta. Métodos semelhantes também são fornecidos com a classe CIM_Datafile. Isso permite que você compacte ou descompacte seletivamente arquivos específicos dentro de uma pasta.

Como a compactação transmite uma pequena penalidade de desempenho, não é recomendável para arquivos ou pastas que são acessados em uma base de rotina; por exemplo, você provavelmente não deseja compactar arquivos de banco de dados, arquivos de log ou pastas de perfil de usuário. Melhores candidatos para compactação são arquivos e pastas que não são acessados com muita frequência. Por exemplo, você pode escrever um script para retornar uma coleção de pastas em uma unidade que não foram acessadas por um mês ou mais e compactar cada uma dessas pastas.

A quantidade de espaço em disco liberada pela compactação de pastas varia dependendo do tipo de arquivos armazenados nessa pasta. Por exemplo, .jpg arquivos já estão compactados e uma compactação adicional tem pouco efeito sobre o tamanho do arquivo. No entanto, com outros tipos de arquivo, a economia pode ser considerável. Por exemplo, uma nova pasta foi criada em um computador de teste baseado no Windows 2000 e 33 documentos do Microsoft Word, ocupando um total de 15 megabytes (MB) de espaço em disco, foram copiados para essa pasta. Quando os documentos foram compactados, a pasta assumiu apenas 7 MB de espaço em disco.

Exemplos

O exemplo VBScript a seguir compacta a pasta C:\Scripts.

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
 & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFolders = objWMIService.ExecQuery _
 ("SELECT * FROM Win32_Directory WHERE Name = 'c:\\Scripts'")
For Each objFolder in colFolders
 errResults = objFolder.Compress
 Wscript.Echo errResults
Next

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows Vista
Servidor mínimo com suporte
Windows Server 2008
Namespace
Root\CIMV2
MOF
CIMWin32.mof
DLL
CIMWin32.dll

Confira também

Classes do sistema operacional

Win32_Directory

Descompactar