Browse Source

Designer: Monopolize stdout/stderr

pull/148/head
Nikita Tsukanov 11 years ago
parent
commit
34ccfd8930
  1. 15
      src/Windows/Perspex.Designer/Program.cs

15
src/Windows/Perspex.Designer/Program.cs

@ -1,6 +1,7 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading;
@ -30,12 +31,26 @@ namespace Perspex.Designer
//Initialize sync context
SynchronizationContext.SetSynchronizationContext(new WindowsFormsSynchronizationContext());
var comm = new CommChannel(Console.OpenStandardInput(), Console.OpenStandardOutput());
Console.SetOut(new NullTextWriter());
Console.SetError(new NullTextWriter());
comm.Disposed += () => Process.GetCurrentProcess().Kill();
var service = new PerspexAppHost(comm);
service.Start();
Application.Run();
}
class NullTextWriter : TextWriter
{
public override Encoding Encoding => Encoding.UTF8;
public override void Write(char[] buffer, int index, int count)
{
}
public override void Write(char value)
{
}
}
private static void DemoMain(string[] args)
{
SynchronizationContext.SetSynchronizationContext(new DispatcherSynchronizationContext());

Loading…
Cancel
Save