[gelöst] WinForms / notepad aufrufen



  • In einer Anwendung wird eine Textdatei erstellt Diese Textdatei soll vom Anwender
    mit notpad gelesen und verändert werden können. Aufruf und Lesen funktioniert einwandfrfei.
    Nur, wenn in notepad die Datei verändert wird, erfolgt beim Speichern die Meldung (von notepad):

    Die Datei ... kann nicht gespeichert werden. Stellen sie sicher, dass Pfadname und Datei richtig sind.

    Hier der Code:

    private void Editor()
            {
                string Pfad  = "notepad.exe";
                string Dir   = Directory.GetCurrentDirectory();
                string Datei = Dir + "\\" + datei;
                MessageBox.Show("Editor aufrufen\n" +
                                "\nPfad     " + Pfad +
                                "\nDatei   " + Datei);
                try
                {
                    // falls Datei geöffnet schliessen
                    if(fileopen) sw.Close();
                    if(fileopen) fs.Close();
                    // notepad starten
                    Process proc = new Process();
                    proc.StartInfo.FileName  = Pfad;
                    proc.StartInfo.Arguments = Datei;
                    proc.Start();
                }
                catch (Exception ex)
                {
                    // wird nicht erreicht!
                    MessageBox.Show("Fehler\n" +
                                    "\nPfad     " + Pfad +
                                    "\nDatei   " + datei +
                                    "\n\n" + ex.Message +
                                    "","Fehler",MessageBoxButtons.OK,MessageBoxIcon.Error);
                    return;
                }
                Lesen(Datei); 
            }
    


  • Schuß ins Blaue: Hast Du es schon mit ShellExecute() versucht?



  • Geht auch wie versucht. Es fehlt nur noch die Angabe des WorkingDiretory:

    proc.StartInfo.WorkingDirectory = Directory.GetCurrentDirectory();
    

Log in to reply