SetupQuerySpaceRequiredOnDriveA-Funktion (setupapi.h)

[Diese Funktion ist für die Verwendung in den betriebssystemen verfügbar, die im Abschnitt "Anforderungen" angegeben sind. Es kann in nachfolgenden Versionen geändert oder entfernt werden. SetupAPI sollte nicht mehr zum Installieren von Anwendungen verwendet werden. Verwenden Sie stattdessen den Windows Installer zum Entwickeln von Installationsprogrammen für Anwendungen. SetupAPI wird weiterhin zum Installieren von Gerätetreibern verwendet.]

Die SetupQuerySpaceRequiredOnDrive-Funktion untersucht eine Liste des Speicherplatzes, um den Speicherplatz zu ermitteln, der zum Ausführen aller Dateivorgänge erforderlich ist, die für ein bestimmtes Laufwerk aufgeführt sind.

Syntax

WINSETUPAPI BOOL SetupQuerySpaceRequiredOnDriveA(
  [in]  HDSKSPC  DiskSpace,
  [in]  PCSTR    DriveSpec,
  [out] LONGLONG *SpaceRequired,
  [in]  PVOID    Reserved1,
  [in]  UINT     Reserved2
);

Parameter

[in] DiskSpace

Das Handle für eine Speicherplatzliste auf dem Datenträger.

[in] DriveSpec

Ein Zeiger auf eine NULL-endende Zeichenfolge, die das Laufwerk angibt, auf dem Speicherplatzinformationen zurückgegeben werden sollen.

Dies sollte im Format "x:" oder "\server\share" vorliegen.

[out] SpaceRequired

Wenn die Funktion erfolgreich ist, empfängt dieser Parameter den zusätzlichen Speicherplatz, der zum Verarbeiten aller Dateivorgänge erforderlich ist, die in der Liste des Speicherplatzes für das Von DriveSpec angegebene Laufwerk aufgeführt sind.

Die SetupQuerySpaceRequiredOnDrive-Funktion berechnet den zusätzlichen Speicherplatz auf dem Ziellaufwerk, indem sie nach bereits vorhandenen Versionen der Dateien auf dem Ziellaufwerk sucht.

Wenn beispielsweise ein Dateivorgang eine 2000-Byte-Datei FIRST.EXE in das Verzeichnis C:\MYPROG kopiert, sucht die SetupQuerySpaceRequiredOnDrive-Funktion automatisch nach einer bereits vorhandenen Version dieser Datei in diesem Verzeichnis. Wenn eine bereits vorhandene Version von C:\MYPROG\FIRST.EXE eine Dateigröße von 500 Bytes aufweist, beträgt der zusätzliche Speicherplatz auf Laufwerk C für diesen Vorgang 1500 Byte.

Der empfangene Wert kann 0 (null) oder eine negative Zahl sein, wenn kein zusätzlicher Speicherplatz erforderlich ist oder wenn Speicherplatz auf dem Ziellaufwerk freigegeben wird.

Wenn FIRST.EXE im vorherigen Beispiel von Laufwerk C gelöscht wird, beträgt der erforderliche Speicherplatz 2000 Bytes oder der auf Laufwerk C freigegebene Speicherplatz.

Wenn die vorhandene Version eine Dateigröße von 5.000 Byte aufweist, ist der Speicherplatz erforderlich, um sie durch den 2000-Byte-FIRST.EXE 3000 Byte zu ersetzen.

Dateigrößen werden auf Datenträgerclustergrenzen gerundet.

[in] Reserved1

Reserviert; muss 0 (null) sein.

[in] Reserved2

Reserviert; muss 0 (null) sein.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Wert ungleich null, und SpaceRequired empfängt den Speicherplatz, der für die in der aktuellen Speicherplatzliste aufgeführten Dateivorgänge erforderlich ist.

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert 0 (null). Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Rückgabecode Beschreibung
ERROR_INVALID_DRIVE
Das angegebene Laufwerk befindet sich nicht in der Liste des Speicherplatzes.
ERROR_INVALID_HANDLE
Das angegebene DiskSpace-Handle ist ungültig.
ERROR_INVALID_PARAMETER
Die angegebene DriveSpec-Zeichenfolge ist ungültig.

Hinweise

Hinweis

Der Setupapi.h-Header definiert SetupQuerySpaceRequiredOnDrive als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile setupapi.h
Bibliothek Setupapi.lib
DLL Setupapi.dll

Siehe auch

Funktionen

Übersicht

SetupQueryDrivesInDiskSpaceList