Mam stworzony przeze mnie edytor tekstu, który działa bez problemu od zeszłego miesiąca. Ale dzisiaj i wszystkie wczoraj, za każdym razem, gdy otwieram plik txt z eksploratora (dwukrotne kliknięcie) zamiast otwierać go w edytorze, pojawia się komunikat:Moja aplikacja ulega awarii z wyjątkiem FileNotFoundException i nie rozumiem, dlaczego
Edytor tekstu napotkał problem i musi blisko. Przepraszamy za niedogodnoś ci . [Wyślij raport o błędzie] lub [Nie wysyłaj].
Kiedy klikam na „Co robi ten raport o błędach zawierają”, pokazuje, co następuje:
EventType : clr20r3 P1 : texteditor.exe P2 : 1.0.0.0 P3 : 4ad32c52
P4 : mscorlib P5 : 2.0.0.0 P6 : 492b834a P7 : 343f P8 : d8
P9 : system.io.filenotfoundexception
Tak że w zasadzie mówi mi, że jej szukasz pliku, który nie istnieje. Ale tu jest mój problem:
Plik Próbuję otworzyć nie istnieje, bo wystarczy dwukrotnie kliknąć na nim
Oto kod, który otwiera plik, który został dwukrotnie kliknął z Eksploratora Windows:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace TextEditor
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main(string[] args)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
if (args.Length >= 1)
{
Form1 f = new Form1();
f.txt.Text = System.IO.File.ReadAllText(args[0]);
f.txt.Tag = args[0];
Application.Run(f);
}
else Application.Run(new Form1());
}
}
}
Ostatnia sugestia dotyczy między innymi nazw plików zawierających więcej niż jedno miejsce z rzędu. Wystarczy podać nazwę ścieżki. –