Метод сжатия _ класса каталога Win32

Метод сжатия класса WMI сжимает логический файл записи каталога (или каталог), указанный в пути к объекту.

В этом разделе используется синтаксис MOF-файл (MOF). Дополнительные сведения об использовании этого метода см. в разделе вызов метода.

Синтаксис

uint32 Compress();

Параметры

Этот метод не имеет параметров.

Возвращаемое значение

Возвращает значение 0 (ноль), если файл был успешно сжат, и любое другое число для указания ошибки.

0

Запрос выполнен успешно.

2

Отказано в доступе.

8

Произошла неопределенная ошибка.

9

Указано недопустимое имя.

10

Указанный объект уже существует.

11

Файловая система не является файловой системой NTFS.

12

Платформа не Windows.

13

Диск не совпадает.

14

Каталог не пуст.

15

Нарушение общего доступа.

16

Указан недопустимый файл запуска.

17

Привилегия, необходимая для операции, не удерживается.

открыт

Указан недопустимый параметр.

Комментарии

Сжатие позволяет освободить дополнительное пространство для хранения на диске без приобретения нового оборудования и без удаления файлов или папок. В зависимости от размера жесткого диска и типа файлов, хранящихся на этом диске, вы можете восстановить сотни мегабайт дискового пространства и, таким же, отказаться от приобретения нового жесткого диска и перевести компьютер в режим «вне сети», пока не будет установлен новый диск.

Метод сжатия сжимает все файлы и вложенные папки в указанной папке. Кроме того, класс также включает метод uncompressия, который удаляет сжатие из всех файлов и вложенных папок в папке. Аналогичные методы также предоставляются с помощью класса CIM _ File. Это позволяет выборочно сжимать или распаковывать определенные файлы в папке.

Поскольку сжатие является незначительным снижением производительности, не рекомендуется использовать для файлов и папок, к которым осуществляется обращение по отдельности. Например, вы, вероятно, не хотите сжимать файлы базы данных, файлы журналов или папки профилей пользователей. Лучшим кандидатом на сжатие являются файлы и папки, к которым не обращаются очень часто. Например, можно написать сценарий, возвращающий коллекцию папок на диске, к которым не осуществлялся доступ в течение месяца или более, а затем сжимать каждую из этих папок.

Объем дискового пространства, освобожденного путем сжатия папок, зависит от типа файлов, хранящихся в этой папке. Например, .jpg файлы уже сжаты, а дальнейшее сжатие практически не влияет на размер файла. Однако при использовании других типов файлов экономия может быть значительной. например, на тестовом компьютере на базе Windows 2000 была создана новая папка и 33 Microsoft Word документы, а в эту папку было скопировано 15 мегабайт (мб) дискового пространства. Когда документы были сжаты, папка занимает всего 7 МБ дискового пространства.

Примеры

Следующий пример сценария VBScript сжимает папку 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

Требования

Требование Значение
Минимальная версия клиента
Windows Vista
Минимальная версия сервера
Windows Server 2008
Пространство имен
Корневой \ CIMV2
MOF
CIMWin32. mof
DLL
CIMWin32.dll

См. также раздел

Классы операционной системы

_Каталог Win32

Распаковать