Возвращает объем свободного пространства в байтах на используемом по умолчанию диске или томе.

DISKSPACE([cVolumeName [, nType]])

Параметры

cVolumeName

Определяет имя жесткого диска или тома, размер доступного пространства на котором должна возвратить функция. Если параметр cVolumeName опущен, функция возвратит размер доступного пространства для диска или тома заданного по умолчанию.

nType

Задает тип дискового пространства, размер которого необходимо определить. В следующей таблице описаны значения параметра nType.

Значение Описание

1

Общий объем диска.

2

Общий объем свободного пространства на диске. (По умолчанию)

3

Общий объем доступного свободного пространства на диске в контексте пользовательского запроса.

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

Numeric. Функция DISKSPACE( ) возвращает объем указанного дискового пространства в байтах. Если диск полон, функция DISKSPACE( ) возвратит 0 или -1. Если при чтении информации с жесткого диска или тома возникает ошибка, функция DISKSPACE( ) также возвращает –1.

NoteПримечание

В некоторых сетях значение, возвращаемое функцией DISKSPACE( ) для больших сетевых дисков, может быть не совсем точным. Кроме того, DISKSPACE( ) в некоторых случаях может возвратить -1 при наличии длинных имен каталогов под Windows 98.

Expand imageЗамечания

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

Для задания диска или том по умолчанию можно использовать команду SET DEFAULT.

Expand imageПример

В следующем примере функция DISKSPACE( ) определяет, достаточно ли на диске свободного места для выполнения сортировки.

  CopyCode imageСкопировать код
*** Check DISKSPACE before sort ***
CLOSE DATABASES
OPEN DATABASE (HOME(2) + 'Data\testdata')
USE customer  && Opens Customer table

*** Get size of table header ***
gnTableHead = HEADER( )

*** Calculate size of table ***
gnFileSize = gnTableHead + (RECSIZE( ) * RECCOUNT( ) + 1)
IF DISKSPACE( ) > (gnFileSize * 3)
   WAIT WINDOW 'Дискового пространства для сортировки достаточно.'
ELSE
   WAIT WINDOW 'Дискового недостаточно. Сортировка не может быть выполнена.'
ENDIF

Expand imageСмотрите также