linkarrow Home
   linkarrow Downloads
   linkarrow Forum
   linkarrow FAQ
   linkarrow Impressum
   linkarrow Spende

        deu    en
    Gesamt:4.707.656    
    Heute:14    
    Gestern:398    
    Online:1    
 
    Forum:
7.579    
    Heute: 0    
    Gestern: 0    
Valid CSS!
 
Hinweise zur Nutzung der Plugin-Funktion

Hinweise zur Nutzung der PlugIn-Funktion

Allgemeines

Seit Version 1.4.0 Beta 7 gibt es eine PlugIn-Möglichkeit. Damit gibt es für ClearProg fast keine Grenzen mehr. Somit kann jeder seine eigenen Löschoptionen in ClearProg einbinden.

Hier einige allgemeine Informationen zu den PlugIns.
Weiter unten gibt es spezielle Beispiele, mit welchen Befehlen ich was löschen kann.

Die PlugIns stehen in der Datei "ClearProgPugIns.ini". Die Einträge in den eckigen Klammern sind immer die Bezeichnung des Programms für welches das jeweilige PlugIn gelten soll. Alle nachfolgenden Einträge bis zur nächsten eckigen Klammer gehören dann zu einem PlugIn.

Dabei sind folgende Einträge zulässig:

[Text]
Info=
Check1=
Group=
Var1=
Path1=
File1=
Key1=
RegCreate1=
IniFile1=
TextFile1=
XMLFile1=
Interval=
ClearMode=
ModFileAge=
ModFolderAge=
Task=
KillProcess1=
Execute1=
SearchDir1=
Shutdown Last=
der Text erscheint als Name der Löschoption im Programm
der angegebene Text wird im Programm als ToolTippText angezeigt
zum Prüfen des Vorhandenseins einer Datei bzw. eines Registryeintrages
zum Erzeugen einer neuen Rubrik in der linken Löschliste in CP
als Variablenfestlegung
als Pfadermittlung zu einem Dateinamen
zum Löschen einer angegebenen Datei bzw. eines Verzeichnisses
zum Löschen eines Eintrages in der Registry
zum Erzeugen eines Eintrages in der Registry
zum Löschen eines Eintrages in einer Ini-Datei
zum Löschen eines Textes aus einer Datei
zum Leeren eines Abschnittes in einer XML-Datei
gibt den Intervall des Löschens in Tagen an (alle wieviel Tage)
gibt die Löschmethode an (1=normal, 2=Papierkorb, 3=sicher)
löscht nur Dateien, die älter als x Tage sind
löscht nur Verzeichnisse, die älter als x Tage sind
gibt eine Meldung aus, falls das angegebene Programm aktiv ist
zum Beenden von Programmen über den Dateinamen
zum Ausführen externer Programme
zum Löschen von Unterordnern anhand des Ordnernamens
fährt den PC nach dem Löschen herunter
gibt den Zeitpunkt des letzten Löschens an (wird von ClearProg angelegt)

Die Zahl "1" hinter den Einträgen ist bei mehreren Einträgen innerhalb eines PlugIns fortlaufend.
z.B. würde der zweite Registry-Eintrag dann so lauten: Key2=...
Steht keine "1" hinter dem Befehl, so ist dieser nur ein mal pro Plugin zulässig.

Aufbau der Einträge:

Info=
Var1=
Var1=
Var1=
Path1=
Key1=
IniFile1=
TextFile=
File1=
XMLFile1=
Interval=
ClearMode=
kein besonderer Aufbau
als feste Variable kein besonderer Aufbau
Key|Pfad|Eintrag
Pfad+Dateiname|Abschnitt|Eintrag
Key|Pfad|Eintrag
KEY|Pfad|Eintragsfilter
Pfad+Dateiname|Abschnitt|Eintragsfilter
Pfad+Dateiname|Text|Modus
Pfad|Dateifilter|Löschart(Optional)
Pfad+Dateiname|Abschnitt
Anzahl der Tage
1, 2 oder 3
fortlaufender Text
fortlaufender Text
als Wert aus der Registry
als Wert aus einer Ini-Datei
Pfad als Wert aus der Registry
Löschen von Einträgen in der Registry
Löschen von Einträgen in einer ini-Datei
Löschen von Texten aus Dateien
Löschen von Dateien in einem Verzeichnis
Leert den Abschnitt in einer XML-Datei
führt das PlugIn im angegebenen Intervall aus
verwendet für das PlugIn diese Löschmethode

Wenn man auch Unterverzeichnisse beim Löschen von Dateien in einem Ordner einbeziehen möchte,
muß zusätzlich als Löschart "Subfolder" angegeben werden:

File1=C:\Test|*.*|Subfolder -> löscht alle Dateien in C:\Test mit Unterverzeichnissen

File1=C:\Test|*.*|Subfolder- -> löscht alle Dateien in C:\Test mit Unterverzeichnissen, behält aber die leeren Verzeichnisse

File1=C:\Test|*.*|Subfolder+ -> löscht alle Dateien in C:\Test mit Unterverzeichnissen und löscht den Ordner C:\Test selbst auch

Als Trennzeichen gilt generell das "|" (dieses Zeichen erreicht man über AltGr+< )

File1=C:\Test|*.*|Subfolder|OrdnerX?OrdnerY -> löscht alle Dateien in C:\Test mit Unterverzeichnissen und löscht dabei die Verzeichnisse OrdnerX und OrdnerY nicht


Nehmen wir mal ein Beispiel auseinander:

[Microsoft NetMeeting]
Info=Löscht die Liste der in NetMeeting gewählten Adressen/Nummern
Key1=HKEY_CURRENT_USER|Software\Microsoft\Conferencing\UI\CallMRU|Name*

Das ist ein PlugIn für Microsoft NetMeeting.
Dabei wird der Info-Text im Programm als ToolTippText angezeigt.
Der Text "Microsoft NetMeeting" steht als Beschreibung der Löschoption im Programm.
Der Key1-Eintrag sorgt dafür, dass alle Einträge in der Registry, die mit "Name" beginnen
unter dem Key "HKEY_CURRENT_USER" im Pfad "Software\Microsoft\Conferencing\UI\CallMRU"
gelöscht werden.

Möchte man alle Einträge in dem Pfad löschen, so genügt ein "*" als Filter:

[Microsoft NetMeeting]
Info=Löscht die Liste der in NetMeeting gewählten Adressen/Nummern
Key1=HKEY_CURRENT_USER|Software\Microsoft\Conferencing\UI\CallMRU|*

Möchte man nicht nur den Inhalt, sondern den Key "CallMRU" selbst auch löschen,
so geht das mit dem Zusatzparameter "DeleteMainKey"

[Microsoft NetMeeting]
Info=Löscht die Liste der in NetMeeting gewählten Adressen/Nummern
Key1=HKEY_CURRENT_USER|Software\Microsoft\Conferencing\UI\CallMRU|*|DeleteMainKey


Bei der Verwendung von Var's gibt es drei Möglichkeiten:

1. als feste Variable um lange Pfade nicht mehrfach eintragen zu müssen
2. als flexible Variable um Werte aus einem Registry-Eintrag oder aus einer Ini-Datei auszulesen
3. Verwendung von programmintern vordefinierten Variablen (z.B. $)

Beispiel zu 1.:

Var1=HKEY_CURRENT_USER
Var2=Software\Nico Mak Computing\WinZip\
Var3=$Var1$|$Var2$
Key1=$Var3$directories|DefDir
Key2=$Var3$directories|ExtractTo
Key3=$Var3$directories|gzAddDir
Key4=$Var3$directories|AddDir
Key5=$Var3$directories|gzExtractTo

Bei Var3 sieht man, dass man auch Var's miteinander verbinden kann.
Wenn Var's auf der rechten Seite vom "=" stehen, müssen sie von $-Zeichen
eingeschlossen sein.

Man könnte es aber auch in Langform ohne Variablen machen:

Key1=HKEY_CURRENT_USER|Software\Nico Mak Computing\WinZip\directories|DefDir
Key2=HKEY_CURRENT_USER|Software\Nico Mak Computing\WinZip\directories|ExtractTo
Key3=HKEY_CURRENT_USER|Software\Nico Mak Computing\WinZip\directories|gzAddDir
Key4=HKEY_CURRENT_USER|Software\Nico Mak Computing\WinZip\directories|AddDir
Key5=HKEY_CURRENT_USER|Software\Nico Mak Computing\WinZip\directories|gzExtractTo

Beispiel zu 2.:

[RealOnePlayer]
Info=Löscht die Liste der zuletzt gespielten Clips
Var1=HKEY_CURRENT_USER|Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders|AppData
File1=$Var1$\Real\RealOne Player\History|*.*

"Var1" beinhaltet den Wert von "AppData" aus der Registry, was dem Anwendungsverzeichnis
des Users entspricht (da das Anwendungsverzeichnis des Users bei fast jedem anders
heißt, bietet sich die Variable an, da dieses PlugIn dann bei jedem User funktioniert)
Mit dieser Variable kann man dann alle Dateien im RealOnePlayer-History-Ordner löschen,
welcher sich im Anwendungsverzeichnis des Users befindet.

Für den eigenen PC wäre auch eine feste Variante ohne Variablen möglich:

[RealOnePlayer]
Info=Löscht die Liste der zuletzt gespielten Clips
File1=C:\Dokumente und Einstellungen\Klaus Müller\Anwendungsdaten\Real\RealOne Player\History|*.*

Dieses PlugIn funktioniert dann aber nur auf dem speziellen PC. Wenn man dieses PlugIn weitergibt, wird es auf einem anderen PC nicht funktionieren. Daher bietet sich für eine Weitergabe von PlugIns immer eine flexible Variable mit Einträgen aus der Registry bzw. aus einer ini-Datei an.

Um aus einem Registrypfad die Standard-Information auszulesen, ist als Abfrage-Wert (Standard) anzugeben.

[ZoneAlarm LogFiles]
Info=Löscht die Logfiles von ZoneAlarm
Var1=HKEY_LOCAL_MACHINE|Software\Zone Labs\TrueVector\LogStoreDir|(Standard)
File1=$Var1$|.txt:*.log


Beispiel zu 3.:
[UltraEdit 10]
Info=Löscht die Dateiliste von UltraEdit
IniFile1=$Windir$\Uedit32.ini|Recent File List|File*

Dabei werden die File-Einträge in der Uedit32.ini, welche sich im Windows-Verzeichnis befindet, gelöscht.

Diese Variablen werden programmintern durch die aktuellen Verzeichnisse ersetzt:
$WinDir$ = Windows-Verzeichnis
$SystemDir$ = Windows-System-Verzeichnis
$UserTempDir$ = User-Temp-Verzeichnis
$UserProfileDir$ = User-Profile-Verzeichnis (C:\Dokumente und Einstellungen\Username\)
$ProgramFilesDir$ = Programme-Verzeichnis (C:\Programme\)
$AppDataDir$ = C:\Dokumente und Einstellungen\Username\Anwendungsdaten
$AllUsersAppDataDir$ = C:\Dokumente und Einstellungen\All Users\Anwendungsdaten
$LocalAppDataDir$ = Anwendungsdaten-Verzeichnis in Lokale EInstellungen
$AllUsersProfileDir$ = C:\Dokumente und Einstellungen\All Users
$MyDocuments$ = C:\Dokumente und Einstellungen\UserName\Eigene Dateien
$AllUsersDocuments$ = C:\Dokumente und Einstellungen\All Users\Dokumente
$Environ:SetVariable$ = Abfrage von Variablen aus der Windows-Umgebung
Beispiel: $Environ:AllUsersProfile$ ermittelt das Verzeichnis für AllUsersProfile aus der Windows-Umgebung


Beispiele für alle Fälle:

1. Wie lösche ich eine bestimmte Datei (hier test.txt) ?

[test.txt löschen]
Info=löscht die Datei test.txt im Ordner c:\Test
File1=C:\Test|text.txt


2. Wie lösche ich alle Dateien in einem Ordner ?

[Dateien in C:\Test löschen]
Info=löscht alle Dateien im Ordner c:\Test
File1=C:\Test|*.*


3. Wie lösche ich alle Dateien in einem Ordner (auch mit Unterverzeichnissen) ?

[Dateien in C:\Test löschen]
Info=löscht alle Dateien im Ordner c:\Test mit Unterverzeichnissen
File1=C:\Test|*.*|Subfolder


4. Wie lösche ich bestimmte Dateien in einem Ordner (z.B. alle tmp-Dateien) ?

[alle tpm-Dateien im Ordner C:\Test löschen]
Info=löscht alle tmp-Dateien im Ordner c:\Test
File1=C:\Test|*.tmp


5. Wie lösche ich mehrere Dateien in einem Ordner (z.B. alle tmp- und txt-Dateien) ?

[alle tpm-Dateien im Ordner C:\Test löschen]
Info=löscht alle tmp-Dateien im Ordner c:\Test
File1=C:\Test|*.tmp:*.txt

Dabei werden die Filter durch einen Doppelpunkt ":" getrennt.


6. Wie schließe ich bestimmte Dateien beim Löschen aus (z.B. alle txt-Dateien) ?

[alle tpm-Dateien im Ordner C:\Test löschen]
Info=löscht alle tmp-Dateien im Ordner c:\Test
File1=C:\Test|>*.txt

Hier werden alle Dateien außer txt-Dateien im Verzeichnis C:\Test gelöscht
Dabei ist vor den Filter ein ">" zu setzen. Mehrere Filter müssen auch hier durch einen
Doppelpunkt getrennt werden.


7. Wie lösche ich einen Registry-Eintrag (hier Fensterhöhe von ClearProg) ?

[Fensterhöhe von ClearProg löschen]
Info=löscht den Eintrag für die Fensterhöhe von ClearProg
Key1=HKEY_CURRENT_USER|Software\ClearProg|Height


8. Wie lösche ich mehrere Registry-Einträge (hier Netmeeting) ?

[Microsoft NetMeeting]
Info=Löscht die Liste der in NetMeeting gewählten Adressen/Nummern
Key1=HKEY_CURRENT_USER|Software\Microsoft\Conferencing\UI\CallMRU|Name*

Dabei werden alle Einträge gelöscht, die mit "Name" anfangen.


9. Wie lösche ich alle Registry-Einträge in einem Pfad (hier Macromedia DreamweaverMX) ?

[Macromedia DreamweaverMX]
Info=Löscht die Liste der zuletzt genutzten Dokumente
Key1=HKEY_CURRENT_USER|Software\Macromedia\Dreamweaver 6\Recent File List

Dabei wird einfach nur der letzte Parameter (Filter) weggelassen. Es geht aber auch so:

Key1=HKEY_CURRENT_USER|Software\Macromedia\Dreamweaver 6\Recent File List|*


10. Wie lösche ich einen Eintrag aus einer Ini-Datei ?

Hier ein Beispiel einer ini-Datei:

[Last]
Open=C:\Fotos\Pictures\bild3.ico
PasteAsBMP=1

Den Open-Eintrag im Abschnitt "Last" lösche ich wie folgt:

[Open-Eintrag löschen]
Info=Löscht den Open-Eintrag im Last-Abschnitt
IniFile1=C:\Programme\Test\Test.ini|Last|Open

Das Ergebnis sieht dann so aus:

[Last]
Open=
PasteAsBMP=1

Um nicht nur den Inhalt eines Eintrages im Abschnitt "Last" zu löschen, sondern den
Eintrag selbst auch, geht mit dem Zusatzparameter "DELETEKEY" wie folgt:

[Open-Eintrag löschen]
Info=Löscht den Open-Eintrag im Last-Abschnitt
IniFile1=C:\Programme\Test\Test.ini|Last|Open|DELETEKEY

Das Ergebnis sieht dann so aus:

[Last]
PasteAsBMP=1


11. Wie lösche ich eine mehrere Einträge in einem Abschnitt in einer ini-Datei ?

Hier ein Beispiel einer ini-Datei:

[Shell]
Reopen1=C:\Fotos\Pictures\bild1.bmp
Reopen2=C:\Fotos\Pictures\bild_neu.bmp
Reopen3=C:\Fotos\Pictures oto1.bmp
Reopen4=C:\Fotos\Pictures\bild2.bmp

Alle Reopen-Einträge im Abschnitt "Shell" lösche ich wie folgt:

[Reopen-Einträge löschen]
Info=Löscht alle Reopen-Einträge im Shell-Abschnitt
IniFile1=C:\Programme\Test\Test.ini|Shell|Reopen*

Das Ergebnis sieht dann so aus:

[Shell]
Reopen1=
Reopen2=
Reopen3=
Reopen4=


12. Wie lösche ich einen ganzen Abschnitt in einer ini-Datei ?

Hier ein Beispiel einer ini-Datei:

[Last]
Open=C:\Fotos\Pictures\bild3.ico
PasteAsBMP=1

[Shell]
Reopen1=C:\Fotos\Pictures\bild1.bmp
Reopen2=C:\Fotos\Pictures\bild_neu.bmp
Reopen3=C:\Fotos\Pictures oto1.bmp
Reopen4=C:\Fotos\Pictures\bild2.bmp

Den kompletten Abschnitt "Shell" lösche ich wie folgt:

[Abschnitt Shell löschen]
Info=Löscht den kompletten Shell-Abschnitt
IniFile1=C:\Programme\Test\Test.ini|Shell

Das Ergebnis sieht dann so aus:

[Last]
Open=C:\Fotos\Pictures\bild3.ico
PasteAsBMP=1


13. Wie leere ich einen Abschnitt in einer XML-Datei ?


Hier ein Beispiel einer XML-Datei:

<OpenFile
    File1
    File2
    File3
</OpenFile>
<OpenURL>
    URL1
    URL2
</OpenURL>

Den kompletten Abschnitt "OpenFile" leere ich wie folgt:
(sollte dieser Abschnitt in der XML-Datei mehrfach vorkommen,
bearbeitet ClearProg nur den ersten gefundenen Abschnitt)

[Abschnitt OpenFile leeren]
Info=Leert den kompletten OpenFile-Abschnitt
XMLFile1=C:\Programme\Test\Test.xml|OpenFile

Das Ergebnis sieht dann so aus:

<OpenFile>
</OpenFile>
<OpenURL>
    URL1
    URL2
</OpenURL>


14. Wie lösche ich einen Text aus einer Datei ?

[Text löschen]
Info=Löscht Text aus einer Datei
TextFile1=C:\Text.txt|Der Text

Dabei wird der Text "Der Text" unter Berücksitigung von Groß-und Kleinschreibung aus der Datei text.txt enfernt.

Soll die Groß-/Kleinschreibung keine Rolle spielen, sieht es so aus:

TextFile1=C:\text.txt|Der Text|NonCaseSensitive

Der Text kann auch mit einem * verwendet werden:

TextFile1=C:\text.txt|Textanfang*Textende|NonCaseSensitive


15. Wie kann ich ein Plugin stoppen, wenn ein bestimmtes Programm noch geöffnet ist?

[Text löschen]
Info=Löscht Text aus einer Datei, aber nur, wenn Notepad.exe nicht geöfnet ist
Task1=notepad.exe
TextFile1=C:\Text.txt|Der Text

Dabei wird eine Meldung ausgegeben, wenn die "notepad.exe" noch geöffnet ist.
Das Plugin wird dabei dann nicht weiter ausgeführt.


16. Wie kann ich ein Programm beim Ausführen des Plugins beenden?

[Text löschen]
Info=Löscht Text aus einer Datei, und beendet vorher Notepad.exe
KillProcess1=notepad.exe
TextFile1=C:\Text.txt|Der Text

Dabei wird dann bei Ausführung des Plugins zuerst die "notepad.exe" beendet (sofern geöffnet).
Das Plugin wird danach weiter ausgeführt.



Aktualisierung: 14.01.2017   -   Copyright © 2004 by Sven Hoffmann - Alle Rechte vorbehalten.