# Ordner löschen?



## Mailyn (14. August 2005)

Ich weiss, wie man eine Datei im momentanen Ordner löscht:

```
Kill App.Path & "\Projekt1.vbp"
```
Aber, wie kann ich den momentanen Ordner mitlöschen?


----------



## Shakie (14. August 2005)

Mit "RmDir":

```
RmDir "c:\Test"
```


----------



## Mailyn (14. August 2005)

Danke! Funktioniert, aber hab noch n kleines problem:
damit ich nich immer den ganzen pfad eingeben muss, schreib ich:

```
RmDir App.Path & "\Test"
```
Also, dass in dem momentanen Ordner ein Ordner gelöscht wird, aber gibt's auch was, damit er den eigenen Ordner löscht?


----------



## Shakie (14. August 2005)

Was verstehst du unter "eigener Ordner"? Willst du das Verzeichnis löschen, in dem sich dein Programm befindet, das auch selbst gerade ausgeführt wird?


----------



## Mailyn (14. August 2005)

> Willst du das Verzeichnis löschen, in dem sich dein Programm befindet, das auch selbst gerade ausgeführt wird?


 
jep, das meinte ich!


----------



## Orakel (14. August 2005)

Hi Mailyn,

das kannste vergessen. Das Verzeichniss kann nicht gelöscht werden, da ja hier Dein Programm ausgeführt wird.

Gruß
Das Orakel


----------



## Mailyn (14. August 2005)

Mh.... aber, wenn man zuerst in z.B ein Timer-Ereignis "Unload me" reinschreibt und direkt danach den Lösch-Befehl eingibt; dass also das Programm "offiziell" schon beendet ist, der Timer aber noch seinen letzten "Befehl" ausführt?!


----------



## Shakie (15. August 2005)

Mit "Unload Me" ist das Programm noch lange nicht beendet! Damit wird nur eine Form entladen, das hat aber nichts mit dem Programm zu tun. Das Programm wird erst beendet, wenn alle Formulare entladen sind (beispielsweise über "Unload") und wenn kein Code mehr ausgeführt wird. (Schließlich kann man ja auch ein Programm schreiben, dass gar keine Formulare hat.)
Du könntet aber beispielsweise dein Programm ins Windows-Temp-Verzeichnis kopieren, es anschließend von dort mit einem Parameter starten, dass es das Verzeichnis des eigentlichen Programms löschen soll, sobald das Programm nicht mehr aktiv ist. Dann schreibst du noch in die Registry rein, dass das Programm beim nächsten Neustart aus dem Tempverzeichnis gelöscht werden soll.

Aber vielleicht hilft dir das hier auch weiter: http://www.activevb.de/tipps/vb6tipps/tipp0476.html
Die API MoveFileEx könnte aber auch ganz nützlich sein, mit der kann man in der Registry einen Wert eintragen lassen, damit eine Datei beim nächsten Neustart gelöscht wird.


----------

