Hilfe bei CMD "Programm"

Adam Gontier

Stammgast
Hi zusammen

ich möchte gerne ein kleines "Programm" schreiben, welches ich verwenden kann um automatische Optimierungen usw. vorzunehmen.

der Text sieht bislang etwa so aus:
echo 0: Exit
echo 1: Optimize Your System
echo 2: Install Any Software
echo 3: Tweakers World


:menue
set /P auswahl=Choose your Option (0/1/2/3)
if /I "% echo End%"=="0" (
)
if /I "%Optimize Your System%"=="1" (
echo 1
goto :menue
)
if /I "%Install Any Software%"=="2" (
echo 2
goto :menue
)
if /I "%Tweakers World%"=="3" (
echo 3
goto :menue
)
Pause


Nun meine Frage, wie kann ich z.B. bei Exit noch ein Text schreiben bzw. ankommen lassen?
Ebenso für Tweakers World usw. benötige ich ein 2tes menü, wie mache ich das?
Silent install bei Office? 7zip usw. ist kein Problem, lediglich wenn ich es für Office benutze?

PS:
Wenn das Progrämmchen gut wird, wird es bei mir in der Firma eingesetzt, deshalb wird es bereits in englisch verfasst..

LG

PPS: wie kann man unterbinden, das ganze zu editieren?

LG
 

Adam Gontier

Stammgast
Hi

Ich habe leider die Editier-Funktion nicht gesehen...

So nun mein Update:
Ich habe herausgefunden, wie ich ein neues Menü erstellen kann, indem ich es einfach z.B. so mache:

if /I "%Tweakers World%"=="3" (
echo 3
goto :menue3
)
:menue3
set /P auswahl=Test

Die Restlichen Fragen bestehen aber weiterhin.
Ebenso wäre mir noch lieb, wenn jemand wüsste, wie ich das erste menü etwas schöner machen könnte?
bzw. Das zuerst die Eingabe-Liste kommt und unten die Beschreibung? ist dies möglich?

Habe leider noch nicht sehr viel Ahnung von CMD.
Falls benötigt würde ich das ganze auch in Power-Shell machen. Aber lieber wäre mir CMD, da das ganze auch auf älteren Rechnern laufen MUSS!

Zur Zeit kämpfe ich mich durch eine *.dok Datei mit über 100 Seiten, welche 1000ende Befehle mir näher bringen soll, aber mit eurer Hilfe, hoffe ich bin ich schneller :D

Ausserdem würde ich gerne wissen ob es möglich ist das ganze auch via Internet (also Setups) bereit zu stellen?
Also: ein arbeiter geht zum kunden mit diesem "tool" und lässt so direkt den download vom Server laufen, da er z.B. auf Laufwerk D oder so nicht gefunden wurde?
 

PC-John

Stammgast
Ausser den alten Batch-Befehlen und der (neuen) Power-Shell gibt es praktisch nichts, das CMD dürfte da eine Ausnahme darstellen.

Aber aufgepasst:
Von wem kommt das CMD? Halten sich diese Entwickler genau an die Microsoft-Vorgaben?
Denn nur Microsoft alleine weiss (vielleicht auch nicht immer!), was wo genau vorgesehen ist und was nicht.

Vor allem bei unterschiedlichen Betriebssystem-Versionen können ungeahnte Effekte auftreten.
Denn dabei werden verschiedene Befehle anders ausgeführt, bezw. das Progrämmchen bleibt einfach hängen.

So war offiziell der Batch-Befehl für eine Kommentarzeile ein "rem"
Allerdings funktionierte auch der "::" , und erlaubte sogar mehr Spielraum.

Dann gab es einen Freeware/Shareware Batch-to-Com Compiler, welcher den "::" nicht kannte, und darum Amok lief.

Also wenn schon, würde ich auf Power-Shell umstellen zu versuchen.

PC-John
 

Masche

Stammgast
Aber lieber wäre mir CMD, da das ganze auch auf älteren Rechnern laufen MUSS!
Ich würde auch CMD bevorzugen, da es Teil von Windows ist und kein .NET-Framework benötigt, wie Powershell. Statt SET /P würde ich Dir aber CHOICE empfehlen. Dies vereinfacht die Anwendung.

Was verstehst Du aber unter "älteren Rechnern". Welche BS laufen darauf? Soviel ich weiss, war CHOICE bei nicht bei allen Windows Versionen standardmässig installiert.

PPS: wie kann man unterbinden, das ganze zu editieren?

Den Satz verstehe ich nicht. Was willst Du unterbinden?
 

PC-John

Stammgast
... PPS: wie kann man unterbinden, das ganze zu editieren? ...

Nur mit einem Compiler.
Den Quelltext (oder das CMD-File) mit einem Schreibschutz zu versehen reicht niemals.

Dieses ganze CMD-Zeugs ist mit der alten DOS-Zeit zu vergleichen.

Eine andere Möglichkeit wäre, die Berechtigungen für dieses CMD-File entsprechend dem User zu setzen.
Das aber dürfte bei ganz verschiedenen Betriebssystem-Versionen wesentlich mehr Umtriebe verursachen.

Mit einem grossen Mehr-Aufwand könnte das ganze CMD-Problem mit einem modernen Programmiersystem gelöst werden, mit welchem auch die Befehle auf Systemebene ausgeführt werden können. Dabei müsste aber beachtet werden, dass NIEMALS undokumentierte Systemaufrufe verwendet werden. Was ganz einfach heisst, ganz schön brav nach dem Manual arbeiten, und nichts verwenden, was so in entsprechenden Foren zum Programme beschleunigen "empfohlen" wird.

Als eines der einfachsten Programme hierzu könnte Delphi verwendet werden, eine (gratis beigelegte) Buch-Version könnte schon fast genügen. Delphi darum, weil hier eine ganz klare Hierarchie herrscht, und nicht -zig Ausnahmen/Varianten auch noch gehen würden.

PC-John
 
Oben