call, Call, cAll, CAll, dos, Dos

Heinrich Allers allers at t-online.de
So Okt 20 00:00:48 CEST 2002


In dem Angebot zur Ausführung externer Kommandos (call, dos etc.) habe ich mich noch nie so 
richtig zurechtgefunden. Ausgangspunkt meiner jüngsten Verständnisprobleme war der 
Versuch, einen DOS-Sortiervorgang _ohne_ das typische sekundenlange Aufblitzen eines 
schwarzen DOS-Fensters ablaufen zu lassen. Ich dachte, daß das mit einem der dos- und call-
Flexbefehle zu machen sein müßte.

Um alle Möglichkeiten einmal durchzuprobieren, habe ich mir unter der Demo-Datenbank mit 
a99.exe vom 16.10.2002 (und unter Windows 2000) folgende Flexdatei zurechtgemacht:



var "tit k?"
f\if empty jump nichts
xport f xx1.txt
:naechst
next\if no jump weiter
perf schreib
jump naechst
:weiter
close res\close x

// Von den folgenden beiden Befehlszeilen immer nur eine aktivieren!

//Alternative 1: Aktivieren Für Varianten A-D und G und H:
var "command.com /C sort <xx1.txt >xx2.txt"

//Alternative 2: Aktivieren für Varianten E und F:
     var "sort <xx1.txt >xx2.txt"

//Von den folgenden 8 Befehlszeilen immer nur eine aktiviert halten!

//Variante A
call
//Variante B
    Call
//Variante C
    cAll
//Variante D
    CAll

//Variante E (mit Alternative 2)
    dos
//Variante F (mit Alternative 2)
    Dos

//Variante G (mit Alternative 1)
    dos
//Variante H (mit Alternative 1)
    Dos

mes Fertig!!!
jump testend
:schreib
var #20 n\write
return
:testend
//Trick, damit man im Schreibfeld immer gleich den Aufruf
//für den nächsten Testschritt stehen hat:
var "X test.flx"\sho iv
end


Ergebnis:

Bei Variante E und G läuft das Sortieren tatsächlich und wie angestrebt ohne Aufscheinen eines 
schwarzen DOS-Fensters ab.

Fragen:

Warum funktionieren die Varianten G und H? Denn bei den Befehlen 'dos' und 'Dos' wird doch 
der Kommando-Interpreter sozusagen a99-seitig (also festverdrahtet) vor den Aufruf des 
externen Programmes gesetzt, was in Verbindung mit Alternative 1 zu Problemen führen 
müßte?

Warum unterscheiden sich die Varianten A, B, C, D, F und H - zumindest beim gegebenen 
Beispiel und meinen Beobachtungen nach - nur um Nuancen? (Ein schwarzes DOS-Fenster 
lassen z.B. alle aufblitzen).

(Richtig sortieren tun die Ausgangsdatei xx1.txt übrigens alle Varianten).


Mit verständnishungrigen Grüßen:

Heinrich Allers
 
allers at t-online.de, http://home.t-online.de/home/allers
Die Welt hat sich am 11.9.2001 nicht verändert, sondern 
uns ist einmal mehr gezeigt worden, daß sie verändert 
werden muß / El mundo no ha cambiado el 11.9.2001, sino 
nos fue demostrado una vez más que tiene que ser 
cambiado





Mehr Informationen über die Mailingliste Allegro