Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Anwendungsordner löschen (https://www.delphipraxis.net/86774-anwendungsordner-loeschen.html)

xZise 19. Feb 2007 15:35


Anwendungsordner löschen
 
Wie kann ich den Ordner löschen in dem sich die Anwendung befindet, welches dieses Auftrag gibt?

DGL-luke 19. Feb 2007 15:37

Re: Anwendungsordner löschen
 
Ähm... "Wie säge ich den Ast ab, auf dem ich sitze?"

Gibt vielzählige Möglichkeiten, in den "Wie kann sihc mein Programm selbst aus dem internet updaten" solltest du alle finden.

PS: Gehts um nen Uninstaller?

Jelly 19. Feb 2007 15:40

Re: Anwendungsordner löschen
 
Selbst löschen geht nur indirekt, am einfachsten über eine Batch File. Ein Batch File hat den Vorteil, dass es sich selbst löschen kann.

xZise 19. Feb 2007 15:42

Re: Anwendungsordner löschen
 
Sozusagen ;) Weil mein Programm nistet sich auch in die Anwendungsdaten ein ;) Deshalb habe ich sozusagen eine "Selbstzerstörungsfunktion" ;) eingebaut... Nur ist es ja nicht so einfach die Anwendung die läuft zu löschen (PS: Die Uninstaller müssens irgendwie ja können ...)

@ Jelly: Wie sieht eine Batchdatei aus?

shmia 19. Feb 2007 15:43

Re: Anwendungsordner löschen
 
Es ist klar, eine Anwendung kann nicht sofort sein eigenes Programm-Verzeichnis löschen,
denn die EXE-Datei ist ja noch im Zugriff.
Deshalb kann das Verzeichnis erst beim Reboot gelöscht werden:
Delphi-Quellcode:
MoveFileEx(PChar(Verzeichnis), nil, MOVEFILE_DELAY_UNTIL_REBOOT);

xZise 19. Feb 2007 15:46

Re: Anwendungsordner löschen
 
Zitat:

Zitat von shmia
Deshalb kann das Verzeichnis erst beim Reboot gelöscht werden:
Delphi-Quellcode:
MoveFileEx(PChar(Verzeichnis), nil, MOVEFILE_DELAY_UNTIL_REBOOT);

Geht das nicht ein bisschen früher :P

Jelly 19. Feb 2007 15:51

Re: Anwendungsordner löschen
 
Zitat:

Zitat von xZise
Wie sieht eine Batchdatei aus?

Dabei handelt es sich um die 30 Jahre .bat Dateien. Könnte z.B. so aussehen.

Datei loeschen.bat

Code:
del DeineAnwendung.exe
del loeschen.bat
Vergiss aber nicht, deine Anwendung nach Aufruf der Batch zu schliessen.

xZise 19. Feb 2007 15:53

Re: Anwendungsordner löschen
 
Und um den Ordner zu entfernen? (<<< Deldir?)
Kann ich die Batchdatei mit ShellExecute ausführen? (<<< könnt ich testen ;))

DGL-luke 19. Feb 2007 15:56

Re: Anwendungsordner löschen
 
1. deltree
2. ja

3. ich würd noch n sleep reintun... oder wie heißt das bei batch?

EDIT: deltree ist das ganze rekurssiv, del müsste auch mit nem ordner funzen

igel457 19. Feb 2007 15:57

Re: Anwendungsordner löschen
 
Führe mal die "cmd.exe" aus und gebe "help" ein. Dann wirst du über alle Befehle, die es gibt aufgeklärt, auch wie man ein Verzeichnis löscht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:00 Uhr.
Seite 1 von 4  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz