rafke: Process.Start mit C#

Moin Moin!

ich probiere gerade mal ein wenig mit Process.Start rum,
und nun habe ich mal probiert mir kleine Helferlein für
die Komandozeile zu basteln - was aber derzeit schon im
Ansatz scheitert. Wie kann man cmd die Befehle mitgeben
die es ausführen soll ?
Process.Start("cmd.exe", "Befehl plus Optionen") ??

rafke

  1. Moin!

    Process.Start("cmd.exe", "Befehl plus Optionen") ??

    Warum nicht:

    Process.Start("Befehl", "Optionen")

    1. Warum nicht:

      Process.Start("Befehl", "Optionen")

      ich meinte:

      Process.Start("filename", "arguments");

      1. z.B wenn ich mir den Inhalt eines Ordners ausgeben lassen will,
        cmd dir /p - z.B oder
        cmd md MeinOrdner
        dann geht das ganze doch nicht ohne die cmd.exe

        Warum nicht:

        Process.Start("Befehl", "Optionen")

        ich meinte:

        Process.Start("filename", "arguments");

        1. Hallo,

          z.B wenn ich mir den Inhalt eines Ordners ausgeben lassen will,
          cmd dir /p - z.B oder
          cmd md MeinOrdner
          dann geht das ganze doch nicht ohne die cmd.exe

          Bitte lies zuerst die Dokumentation des aufzurufenden Programmes (hier durch Eingabe von cmd/? in der Shell), _bevor_ du derartiges aus einem Progamm machen willst.

          Grüße
            Klaus

          1. Moin

            hab ich - ich kann aus cmd heraus mit cmd /k dir ( z.B ) eine
            neue Instanz von cmd aufrufen und die führt den Befehl aus, nur das
            das eben nicht mit Process.Start("cmd.exe", "/f dir"); funktioniert

            rafke

            Hallo,

            Bitte lies zuerst die Dokumentation des aufzurufenden Programmes (hier durch Eingabe von cmd/? in der Shell), _bevor_ du derartiges aus einem Progamm machen willst.

            Grüße
              Klaus

            1. Hallo,

              hab ich - ich kann aus cmd heraus mit cmd /k dir ( z.B ) eine
              neue Instanz von cmd aufrufen und die führt den Befehl aus, nur das
              das eben nicht mit Process.Start("cmd.exe", "/f dir"); funktioniert

              Wie du soeben erkanntest führt "cmd /k dir" den Befehl "dir" aus. "cmd /f dir" macht dies eben nicht, da /f eine vollkommen andere Option als /k ist.
              Oft liegt das Problem an einem einzigen Buchstaben;-)

              Grüße
                Klaus