[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