Freigeben über


IEmptyVolumeCache::Initialize-Methode (emptyvc.h)

Initialisiert den Datenträgerbereinigungshandler basierend auf den Informationen, die unter dem angegebenen Registrierungsschlüssel gespeichert sind.

Syntax

HRESULT Initialize(
  [in]      HKEY    hkRegKey,
  [in]      LPCWSTR pcwszVolume,
  [out]     LPWSTR  *ppwszDisplayName,
  [out]     LPWSTR  *ppwszDescription,
  [in, out] DWORD   *pdwFlags
);

Parameter

[in] hkRegKey

Typ: HKEY

Ein Handle für den Registrierungsschlüssel, der die Informationen zum Handlerobjekt enthält.

[in] pcwszVolume

Typ: LPCWSTR

Ein Zeiger auf eine Unicode-Zeichenfolge mit Null-Endung mit dem Volumestamm, z. B. "C:".

[out] ppwszDisplayName

Typ: LPWSTR*

Ein Zeiger auf eine Unicode-Zeichenfolge mit NULL-Beendigung mit dem Namen, der in der Liste der Handler des Datenträgerbereinigungs-Managers angezeigt wird. Wenn kein Wert zugewiesen ist, wird der Registrierungswert verwendet.

[out] ppwszDescription

Typ: LPWSTR*

Ein Zeiger auf eine Unicode-Zeichenfolge mit Null-Beendigung, die angezeigt wird, wenn dieses Objekt aus der Liste der verfügbaren Datenträgerbereinigungshandler des Datenträgerbereinigungs-Managers ausgewählt wird. Wenn kein Wert zugewiesen ist, wird der Registrierungswert verwendet.

[in, out] pdwFlags

Typ: DWORD*

Die Flags, die verwendet werden, um Informationen an den Handler und zurück an den Datenträgerbereinigungs-Manager zu übergeben.

Diese Flags können an das Objekt übergeben werden:

EVCF_OUTOFDISKSPACE

Wenn dieses Flag festgelegt ist, ist der Speicherplatz des Benutzers auf dem Laufwerk nicht verfügbar. Wenn dieses Flag empfangen wird, sollte der Handler beim Freigeben von Speicherplatz aggressiv sein, auch wenn dies zu einem Leistungsverlust führt. Der Handler sollte jedoch keine Dateien löschen, die dazu führen würden, dass eine Anwendung fehlschlägt oder der Benutzer Daten verliert.

EVCF_SETTINGSMODE

Wenn der Datenträgerbereinigungs-Manager nach einem Zeitplan ausgeführt wird, wird dieses Flag festgelegt. Sie müssen den Parametern ppwszDisplayName und ppwszDescription Werte zuweisen. Wenn dieses Flag festgelegt ist, ruft der Datenträgerbereinigungs-Manager IEmptyVolumeCache::GetSpaceUsed, IEmptyVolumeCache::P urge oder IEmptyVolumeCache::ShowProperties nicht auf. Da IEmptyVolumeCache::P urge nicht aufgerufen wird, muss die Bereinigung von IEmptyVolumeCache::Initialize verarbeitet werden. Der Handler sollte den pcwszVolume-Parameter ignorieren und nicht benötigte Dateien sauber, unabhängig davon, auf welchem Laufwerk sie sich befinden. Da es keine Möglichkeit für Benutzerfeedback gibt, sollten nur die Dateien berührt werden, die äußerst sicher sauber können.

Diese Flags können vom Handler zurück an den Datenträgerbereinigungs-Manager übergeben werden:

EVCF_DONTSHOWIFZERO

Legen Sie dieses Flag fest, wenn keine Dateien zu löschen sind. Wenn IEmptyVolumeCache::GetSpaceUsed aufgerufen wird, legen Sie den PdwSpaceUsed-Parameter auf Null fest, und der Datenträgerbereinigungs-Manager entlässt den Handler aus seiner Liste.

EVCF_ENABLEBYDEFAULT

Legen Sie dieses Flag so fest, dass der Handler standardmäßig in der Liste des Bereinigungs-Managers aktiviert ist. Es wird jedes Mal ausgeführt, wenn das Hilfsprogramm datenträgerbereinigung ausgeführt wird, es sei denn, der Benutzer deaktiviert das Kontrollkästchen des Handlers. Nachdem das Kontrollkästchen deaktiviert wurde, wird der Handler erst ausgeführt, wenn der Benutzer es erneut auswählt.

EVCF_ENABLEBYDEFAULT_AUTO

Legen Sie dieses Flag so fest, dass der Handler während der geplanten Bereinigung automatisch ausgeführt wird. Dieses Flag sollte nur festgelegt werden, wenn das Löschen der Dateien mit geringem Risiko verbunden ist. Wie bei EVCF_ENABLEBYDEFAULT kann der Benutzer den Handler nicht ausführen, indem er sein Kontrollkästchen in der Liste des Datenträgerbereinigungs-Managers deaktivieren.

EVCF_HASSETTINGS

Legen Sie dieses Flag fest, um anzugeben, dass der Handler eine Benutzeroberfläche anzeigen kann. Ein Beispiel für eine einfache Benutzeroberfläche ist ein Listenfeld, in dem die dateien angezeigt werden, die gelöscht werden sollen. Der Datenträgerbereinigungs-Manager zeigt dann eine Schaltfläche unter der Beschreibung des Bereinigungshandlers an. Der Benutzer klickt auf diese Schaltfläche, um die Benutzeroberfläche anzufordern. Der Standardschaltflächentext ist "Einstellungen", aber der Handler kann einen anderen Text angeben, indem er den AdvancedButtonText-Wert in seinem Registrierungsschlüssel festlegt.

EVCF_REMOVEFROMLIST

Legen Sie dieses Flag fest, um den Handler aus der Liste des Datenträgerbereinigungs-Managers zu entfernen. Alle Registrierungsinformationen werden gelöscht, und der Handler kann erst wieder ausgeführt werden, wenn der Schlüssel und seine Werte wiederhergestellt wurden. Dieses Flag wird hauptsächlich für einmalige Bereinigungsvorgänge verwendet.

Rückgabewert

Typ: HRESULT

Diese Methode kann einen dieser Werte zurückgeben.

Rückgabecode BESCHREIBUNG
S_OK
Erfolg.
S_FALSE
Es sind keine Dateien zu löschen.
E_ABORT
Der Bereinigungsvorgang wurde vorzeitig beendet.
E_FAIL
Fehler beim Bereinigungsvorgang.

Hinweise

Diese Methode wird vom Windows 98-Datenträgerbereinigungs-Manager verwendet. Windows 2000 verwendet die InitializeEx-Methode , die von IEmptyVolumeCache2 exportiert wird.

Verwenden Sie CoTaskMemAlloc , um Arbeitsspeicher für die Zeichenfolgen zuzuweisen, die über ppwszDisplayName und ppwszDescription zurückgegeben werden. Der Datenträgerbereinigungs-Manager gibt den Arbeitsspeicher frei, wenn er nicht mehr benötigt wird.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional, Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile emptyvc.h
DLL Shell32.dll (Version 5.0 oder höher)