[Allegro] Spurlose L"oschung eines 'Allegro-Tochterprozesses'
Heinrich Allers
allers at t-online.de
Fr Nov 24 23:50:38 CET 2006
Ein ziemlich subtiles Problem habe ich, das ich hier
vereinfacht darstelle. In seiner Vereinfachung wirkt
die konstruierte Situation unsinnig, in ihrem realen
Kontext hat die Sache aber ihren Sinn:
Ich will ausgehend von der Allegro-Standard-
Installation der Demo-Datenbank diese von einem
anderen Programmverzeichnis, etwa c:\allegro\tmpr,
aus bearbeiten. Beim Verlassen dieses
Bearbeitungsprozesses (mit Programmverzeichnis
c:\allegro\tmpr) will ich, daß alle Dateien in
c:\allegro\tmpr gelöscht werden.
Das geht zunächst mal alles sehr schön mit
folgender Flexdatei:
Ein neues Programmverzeichnis
c:\allegro\tmpr anlegen, in das
das Standard-Programmverzeichnis reinkopiert
wird:
var "mkdir tmpr"\dos
var "copy *.* .\\tmpr"\dos
Das neue Programmverzeichnis mit einer _endflx.flx
bestücken, die die Stapeldatei loe-tmpr.bat
zur Ausführung bringt:
var ".\\tmpr\\_endflx.flx"\xport f
wri 'var P "loe-tmpr.bat"\\dos' n
close x
Das neue Programmverzeichnis mit einer
Stapeldatei loe-tmpr.bat bestücken, die beim
Verlassen des Programms alle in c:\allegro\tmpr
befindlichen Dateien löscht:
var ".\\tmpr\\loe-tmpr.bat"\xport f
wri "@echo off" n
wri "del /Q c:\\allegro\\tmpr\\*.*" n
close x
Das Programm mit dem neugeschaffenen
Programmverzeichnis c:\allegro\tmpr sowie
von ihm aus aufrufen:
var P "tmpr\\a99.exe " P "demo2\\orda.ini"\STOP
### Ende der Flexdatei! ###
Das klappt auch alles ganz schön; der einzige Defekt
ist, daß am Ende das Verzeichnis c:\allegro\tmpr
nicht leer ist, sondern noch a99.exe drinsteht.
Gibts einen Trick, mittels dessen man auch noch
a99.exe in diesem Verzeichnis loswird?
Mit besten Grüßen:
Heinrich Allers
allers at t-online.de * http://www.h-allers.de
* Ich bin ein Integrationsverweigerer! *
Mehr Informationen über die Mailingliste Allegro