Sprache: VB
Eine Klasse die den Papierkorb löscht. Mit Hilfe der Windowseigenen Funktionen.
Je ein Beispiel für den Aufruf mit Statusanzeige und Sound und ein Beispiel ohne Statusanzeige
Option Explicit On
Option Strict On
Friend Class clsSafeNativeMethods
Friend Const UserInterface_NOCONFIRMATION As Short = &H1S
Friend Const UserInterface_NOPROGRESS As Short = &H2S
Friend Const UserInterface_NOSOUND As Short = &H4S
Friend Declare Function SHEmptyRecycleBin Lib "shell32.dll" Alias "SHEmptyRecycleBinA" _
(ByVal hwnd As Integer, ByVal pszRootPath As String, ByVal dwFlags As Integer) As Integer
Friend Declare Function SHUpdateRecycleBinIcon Lib "shell32.dll" () As Integer
End Class
'Aufruf mit Statusmeldung
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
clsSafeNativeMethods.SHEmptyRecycleBin(Me.Handle.ToInt32, _
vbNullString, _
clsSafeNativeMethods.UserInterface_NOCONFIRMATION)
clsSafeNativeMethods.SHUpdateRecycleBinIcon()
End Sub
'Aufruf ohne Status und Sound
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
clsSafeNativeMethods.SHEmptyRecycleBin(Me.Handle.ToInt32, vbNullString, _
clsSafeNativeMethods.UserInterface_NOCONFIRMATION + clsSafeNativeMethods.UserInterface_NOPROGRESS _
+ clsSafeNativeMethods.UserInterface_NOSOUND)
clsSafeNativeMethods.SHUpdateRecycleBinIcon()
End Sub
Option Explicit On
Option Strict On
Friend Class clsSafeNativeMethods
Friend Const UserInterface_NOCONFIRMATION As Short = &H1S
Friend Const UserInterface_NOPROGRESS As Short = &H2S
Friend Const UserInterface_NOSOUND As Short = &H4S
Friend Declare Function SHEmptyRecycleBin Lib "shell32.dll" Alias "SHEmptyRecycleBinA" _
(ByVal hwnd As Integer, ByVal pszRootPath As String, ByVal dwFlags As Integer) As Integer
Friend Declare Function SHUpdateRecycleBinIcon Lib "shell32.dll" () As Integer
End Class
'Aufruf mit Statusmeldung
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
clsSafeNativeMethods.SHEmptyRecycleBin(Me.Handle.ToInt32, _
vbNullString, _
clsSafeNativeMethods.UserInterface_NOCONFIRMATION)
clsSafeNativeMethods.SHUpdateRecycleBinIcon()
End Sub
'Aufruf ohne Status und Sound
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
clsSafeNativeMethods.SHEmptyRecycleBin(Me.Handle.ToInt32, vbNullString, _
clsSafeNativeMethods.UserInterface_NOCONFIRMATION + clsSafeNativeMethods.UserInterface_NOPROGRESS _
+ clsSafeNativeMethods.UserInterface_NOSOUND)
clsSafeNativeMethods.SHUpdateRecycleBinIcon()
End Sub
Alte URL:
/snippet/papierkorb-leeren-vb-und-api/425
Ein guter Snippet allerdings würde mich stören das man noch erst 2 Buttons erstellen muss was meiner Ansicht nach nicht komfortabel ist bzw. nicht sofort einsatzbereit ist wie eine Klasse oder eine Funktion. Das ist mir aber schon bei anderen Snippets von dir aufgefallen.
Dies soll ja auch nur ein Beispiel für das Aufrufen und den Einsatz der Klasse sein. Oft erreichen einem Fragen wie man denn entsprechenden Klassen einsetzt. Hier wird gleich das Beispiel mitgeliefert.