Hallo Peter !
Du musst den 'anfänglichen Umgebungsspeicher' auf z.B. 2048 (Bytes) setzen, damit genügend Speicherplatz für Environment-Variablen vorhanden ist, sonst kommt es ja zum Überlauf mit bekannter Fehlermeldung.
In DOS selber macht man das mit dem Schalter /e:2048 im shell Kommando in der Datei Config.sys. Hier ist aber Windows gemeint und da funktioniert das durch Aufrufen der 'Eigenschaften' für die Batch-Datei im Tab 'Speicher'.
Also: Rechtsklick auf die Batchdatei im Explorer bzw. von woanders aus, Eigenschaften auswählen -> Tab/Reiter 'Speicher' auswählen und setzen des Parameters 'anfänglicher Umgebungsspeicher' (auf 2048 oder mehr oder weniger).
Du kannst aber auch als erste Zeile in der Datei Config.sys
folgendes inkludieren:
shell=command.com /e:512 /p
oder
shell=c:\windows\command.com /e:2048 /p
/p ist auch ein Schalter und meint 'permanent', das ist eine shell-environment instanz, die mittels 'exit' DOS-Befehl nicht beendet werden kann. Gemeint ist, daß die Environmentvariablen nicht gelöscht werden.
Grundsätzlich ist command.com permanent, man kann temporäre Kopien von command.com starten und mit exit wieder zur vorherigen command.com Speicherkopie (environment) zurückkehren.
Conclusio:
Es ist Dir schon klar, daß Du mit set variable=... eine Environment-Variable setzt, oder ?
Diese Umgebungsvariable muß im Umgebungsspeicher, der von Haus aus 'nur' 1024 Bytes beträgt, abgespeichert werden.
Deswegen erhöhe den zur Verfügung stehenden Speicherplatz für die Umgebung (das DOS Environment) auf z.B. 2048 und es kommt zu keiner Fehlermeldung mehr.
Der höchstzulässige Wert für den Umgebungsspeicher beträgt 32768 Bytes. Versuchst Du mehr Umgebungsspeicher anzugeben, wird auch 1024 Bytes standardmäßig statt Deinem angegebenen Wert verwendet.
mfg Kikakater
|