Функция SetupQuerySpaceRequiredOnDriveA (setupapi.h)
[Эта функция доступна для использования в операционных системах, указанных в разделе Требования. В последующих версиях он может быть изменен или недоступен. SetupAPI больше не следует использовать для установки приложений. Вместо этого используйте установщик Windows для разработки установщиков приложений. SetupAPI по-прежнему используется для установки драйверов устройств.]
Функция SetupQuerySpaceRequiredOnDrive проверяет список дискового пространства, чтобы определить пространство, необходимое для выполнения всех операций с файлами, перечисленных для определенного диска.
Синтаксис
WINSETUPAPI BOOL SetupQuerySpaceRequiredOnDriveA(
[in] HDSKSPC DiskSpace,
[in] PCSTR DriveSpec,
[out] LONGLONG *SpaceRequired,
[in] PVOID Reserved1,
[in] UINT Reserved2
);
Параметры
[in] DiskSpace
Дескриптор списка дискового пространства.
[in] DriveSpec
Указатель на строку, завершающуюся нулевым значением, которая указывает диск, на который должны возвращаться сведения о пространстве.
Он должен иметь вид "x:" или "\server\share".
[out] SpaceRequired
Если функция выполняется успешно, этот параметр получает дополнительное пространство, необходимое для обработки всех операций с файлами, перечисленных в списке дискового пространства для диска, указанного в DriveSpec .
Функция SetupQuerySpaceRequiredOnDrive вычисляет дополнительное пространство, необходимое на целевом диске, проверив наличие хищных версий файлов на целевом диске.
Например, если операция с файлом копирует 2000-байтовый файл, FIRST.EXE, в каталог C:\MYPROG, функция SetupQuerySpaceRequiredOnDrive автоматически проверяет наличие ранее существовающей версии этого файла в этом каталоге. Если ранее существовающая версия C:\MYPROG\FIRST.EXE имеет размер файла 500 байт, дополнительное пространство на диске C, необходимое для этой операции, составляет 1500 байт.
Полученное значение может быть равно 0 (нулю) или отрицательному числу, если дополнительное пространство не требуется или если пространство освобождается на целевом диске.
Если FIRST.EXE в предыдущем примере удаляется с диска C, необходимое пространство составляет 2000 байт или свободное пространство, освобожденное на диске C.
Если размер файла ранее используемой версии составляет 5000 байт, то дисковое пространство, необходимое для замены 2000-байтным FIRST.EXE, составляет 3000 байт.
Размеры файлов округляются до границ дискового кластера.
[in] Reserved1
Защищены; значение должно быть равно 0 (ноль).
[in] Reserved2
Защищены; значение должно быть равно 0 (ноль).
Возвращаемое значение
Если функция выполняется успешно, возвращаемое значение не равно нулю, и SpaceRequired получает объем пространства, необходимого для операций с файлами, перечисленных в списке текущего места на диске.
Если функция завершается сбоем, возвращается значение 0 (ноль). Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Код возврата | Описание |
---|---|
|
Указанный диск отсутствует в списке дискового пространства. |
|
Указанный дескриптор DiskSpace недопустим. |
|
Указанная строка DriveSpec недопустима. |
Комментарии
Примечание
Заголовок setupapi.h определяет SetupQuerySpaceRequiredOnDrive в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | setupapi.h |
Библиотека | Setupapi.lib |
DLL | Setupapi.dll |