estoy creando una escucha de seguimiento de esta manera:.NET - TextWriterTraceListener, el archivo está en uso por otro proceso
// Setup log tracing.
Trace.Listeners.Add(new TextWriterTraceListener(MyLogPath));
Trace.AutoFlush = true;
Trace.WriteLine(DateTime.Now.ToString() + "-" + " Program started");
Cuando detecto el archivo ha conseguido demasiado grande, estoy queriendo trunca (o más bien, tome las últimas N líneas solamente). Para hacer esto, quiero leer el archivo, pero parece que no importa lo que haga el trazador de escucha tiene un bloqueo, es decir, tratando de eliminar el trazador de escucha y deshacerse de su secuencia de esta manera:
// Clear logging.
Trace.Listeners[0].Close();
Trace.Listeners[0].Dispose();
Trace.Listeners.Clear();
, antes de leerlo en este aspecto:
// Read in existing log.
string[] lines = File.ReadAllLines(MyLogPath);
, me da una excepción IO (archivo está en uso por otro proceso).
¿Alguna idea?
Ah! Sí, acabo de descubrir esto después de inspeccionar la colección. Esto funciona. – Robinson