Notepad öffnen - Inkompatibilität mit 64 Bit-Versionen



  • Guten Abend!

    Ich versuche ganz einfach Notepad zu öffnen:

    Process.Start("notepad.exe");
    

    Dies hat zunächst problemlos funktioniert. Nachdem ich nun etwas mit der Übergabe von Werten probiert habe, funktioniert das Öffnen plötzlich nicht mehr und ich erhalte die Fehlermeldung:
    ...notepad.exe kann aufgrund einer Inkompatibilität mit 64 Bit-Versionen von Windows nicht gestartet bzw. ausgeführt werden. ...

    Warum geht es auf einmal nicht mehr Notepad zu öffnen? 😕
    Und wie kann ich dieses Problem beheben?

    Danke!



  • So, nun habe ich zum Testen ein neues Projekt erstellt und siehe da, Notepad wird wieder geöffnet?!?!

    Nun soll noch Text mit übergeben werden, dies versuche ich nun wie folgt, leider bleibt notepad leer. Weshalb?

    Process myProcess = new Process();
                myProcess.StartInfo.FileName = "notepad.exe";
                myProcess.StartInfo.UseShellExecute = false;
                myProcess.StartInfo.RedirectStandardInput = true;
                myProcess.Start();
                StreamWriter myStreamWriter = myProcess.StandardInput;
                String inputText;
                inputText = "Hier ist der Text";
                myStreamWriter.WriteLine(inputText);
                myStreamWriter.Close();
                myProcess.WaitForExit();
                myProcess.Close();
    


  • Notepad ist doch ein GUI-Programm und nimmt keine Werte per Standardeingabe entgegen...

    echo Test | notepad
    // sowie
    notepad <test.txt
    

    funktioniert ja auch nicht.

    Erzeuge eine Textdatei und öffne Notepad mit dieser (als Parameter).



  • Anders gesagt: dein Programm und notepad sind zwei unterschiedliche Programme.
    Das eine (C#) kann das andere (notepad) zwar aufrufen, gibt aber alles weitere an dieses ab.
    Mit Word wäre mit besonderen Massnahmen auch eine Interoperation möglich, mit notepad aber nicht.

    Mit 64-Bit hat das aber nichts zu tun!



  • Sonne82 schrieb:

    Nun soll noch Text mit übergeben werden, dies versuche ich nun wie folgt, leider bleibt notepad leer. Weshalb?

    *facepalm*
    Na weil das so nicht geht.

    ps: Es geht übrigens gar nicht, zumindest nicht sauber. Die einzige saubere Lösung ist ein File mit dem gewünschten Inhalt zu erzeugen, und dann den Pfad dieses Files mitzugeben. So dass Notepad halt dieses File aufmacht statt "leer" zu starten.


Anmelden zum Antworten