"Ubergabe von Umgebungsvariable an CockPit
    thomas at mpim-bonn.mpg.de 
    thomas at mpim-bonn.mpg.de
                  
    Fr Mai 24 12:55:16 CEST 1996
    
    
Lieber Herr Bulle, lieber Herr Allers,
> ...                                   Diese Methode wird als Standard 
> zum HANS-Paket mitgeliefert - an dem doch auch Herr Berger mitgebastelt 
> hat; deshalb wundert es mich, dass er Ihnen einen so komplizierten Rat 
> gegeben hat.
Das ist wahr. Die Konstruktion bei HANS ist von mir. "Basteln" ist
vielleicht ein schlechter Ausdruck, "schwitzen und tuefteln" passt
besser :-).
Weil Herr Bulle die wesentlichen Teile bereits zusammengestellt hat,
moechte ich nur kleinere Kommentare dazu abgeben:
 
> Vorgabedatei CPHANS.OPT
>    ...
>    P %-P%
Diese Zeile funktioniert nur, weil die ganze Konstruktion so
ist, dass sie garnicht benutzt wird!
>    ...
>    C %-HANS%\CPHANS.BAT
Diese Zeile funktioniert, da sie so wie sie ist von ACP ans Ende 
der CCC.BAT geschrieben wird
> Cockpit-Aufrufdatei CPHANS.BAT
>    ...
>    : Umgebungswerte initialisieren (lassen)
>    if "%-HANS%"=="" call INIHANS
Diese Zeile vermeidet Doppelsetzungen: CPHANS.BAT wird ja stets
aufgerufen, wenn ein Ruecksprung ins Cockpit erfolgt, sind
-P, -D, etc. geaendert worden, sollen die Vorgaben aus INIHANS
natuerlich. _nicht_ genommen werden. INIHANS.BAT wiederum setzt
die Variable -HANS und manifestiert somit, dass alle Variablen
initialisiert sind.
Weniger elegant aber einsichtiger waere eine Konstruktion aus:
COCKPIT.BAT - macht Setzungen und startet ACP das erste Mal
ACPS.BAT - (ruhig im schreibgeschuetzten Programmverzeichnis)
           macht ACP-Aufruf die folgenden Male wegen 
           'C %-P%\ACPS.BAT' in CP.OPT.
Beide entsprechen natuerlich CP.BAT, nur dass ich persoenlich
keinen Namen benutze, der traditionell fuer COPY-Kommandos 
reserviert ist...
>    ...
>    %-EXE%acp -oCPHANS.OPT %1 %2 %3 %4 %5 %6 %7 %8 %9 -a3%-MP%
>    ...
wichtig ist hier, dass -P auch schon beim ersten Aufruf (durch 
besagtes INIHANS) besetzt ist, so dass die 'P'-Zeile aus 
CPHANS.OPT keine Chance hat.
N.B.: %-EXE% ist leer, falls das Programmverzeichnis im Suchpfad
ist, sonst "%-P%\". (Aufrufzeilenkuerzechance zuungunsten von
Umgebungsspeicher).
Aber um nocheinmal den Inhalt meiner ersten Mail zum Thema
zusammenzufassen: 
Es ist m.E. moeglich, Cockpit so zu starten und mit einer 
'installationsunabhaengigen' Vorgabendatei, die 
Umgebungsvariablensyntax benutzt, zu fuettern, dass die generierten 
Aufrufe in CCC.BAT funktionieren.
Die 'eingebauten' Cockpit-Funktionen (Editieren vor allem oder der
Punkt 'zuruecksetzen') funktionieren dann aber in der Regel nicht.
Viele Gruesse
Thomas Berger
    
    
Mehr Informationen über die Mailingliste Allegro