Freigeben über


SetupQuerySpaceRequiredOnDriveW-Funktion (setupapi.h)

[Diese Funktion steht für die Verwendung in den im Abschnitt "Anforderungen" angegebenen Betriebssystemen zur Verfügung. Sie kann in nachfolgenden Versionen geändert oder nicht verfügbar sein. SetupAPI sollte nicht mehr für die Installation von Anwendungen verwendet werden. Verwenden Sie stattdessen den Windows Installer zum Entwickeln von Anwendungsinstallationsprogrammen. SetupAPI wird weiterhin für die Installation von Gerätetreibern verwendet.]

Die SetupQuerySpaceRequiredOnDrive--Funktion untersucht eine Speicherplatzliste, um den erforderlichen Speicherplatz zu ermitteln, um alle für ein bestimmtes Laufwerk aufgeführten Dateivorgänge auszuführen.

Syntax

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

Parameter

[in] DiskSpace

Das Handle für eine Speicherplatzliste.

[in] DriveSpec

Ein Zeiger auf eine mit Null beendete Zeichenfolge, die das Laufwerk angibt, auf dem Speicherplatzinformationen zurückgegeben werden sollen.

Dies sollte sich in der Form "x:" oder "\server\share" befinden.

[out] SpaceRequired

Wenn die Funktion erfolgreich ist, erhält dieser Parameter den zusätzlichen Speicherplatz, der zum Verarbeiten aller in der Speicherplatzliste aufgeführten Dateivorgänge für das Laufwerk erforderlich ist, das DriveSpec- angibt.

Die SetupQuerySpaceRequiredOnDrive--Funktion berechnet den zusätzlichen Speicherplatz, der auf dem Ziellaufwerk erforderlich ist, indem überprüft wird, ob bereits vorhandene Versionen der Dateien auf dem Ziellaufwerk vorhanden sind.

Wenn ein Dateivorgang beispielsweise 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 Byte aufweist, beträgt der zusätzliche Speicherplatz auf dem Laufwerk C für diesen Vorgang 1500 Bytes.

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

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

Wenn die bereits vorhandene Version eine Dateigröße von 5000 Byte aufweist, ist der zum Ersetzen des Speicherplatzes erforderliche Speicherplatz durch das 2000-Byte-FIRST.EXE 3000 Byte beträgt 3000 Bytes.

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 ausgeführt wird, handelt es sich bei dem Rückgabewert um einen Wert ungleich Null und SpaceRequired die menge an Speicherplatz erhält, die von den in der aktuellen Speicherplatzliste aufgeführten Dateivorgängen erforderlich ist.

Wenn die Funktion fehlschlägt, ist der Rückgabewert 0 (null). Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.

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

Bemerkungen

Anmerkung

Der Header setupapi.h 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
mindestens unterstützte Client- Windows XP [nur Desktop-Apps]
mindestens unterstützte Server- Windows Server 2003 [Nur Desktop-Apps]
Zielplattform- Fenster
Header- setupapi.h
Library Setupapi.lib
DLL- Setupapi.dll

Siehe auch

Funktionen

Übersicht

SetupQueryDrivesInDiskSpaceList