public void Listen(string UnixEndPoint)
{
ServerSocket = new Socket(AddressFamily.Unix, SocketType.Stream, ProtocolType.IP);
//EndPoint EndPoint = (EndPoint)Assembly.LoadWithPartialName("Mono.Posix").GetType("Mono.Unix.UnixEndPoint").GetConstructor(new Type[] { typeof(String) }).Invoke(null, new object[] { UnixEndPoint });
//EndPoint EndPoint = (EndPoint)Assembly.LoadWithPartialName("Mono.Posix").GetType("Mono.Unix.UnixEndPoint").GetConstructor(new Type[] { typeof(String) }).Invoke(new object[] { UnixEndPoint });
EndPoint EndPoint = (EndPoint)Assembly.Load("Mono.Posix").GetType("Mono.Unix.UnixEndPoint").GetConstructor(new Type[] { typeof(String) }).Invoke(new object[] { UnixEndPoint });
Console.WriteLine(EndPoint);
ServerSocket.Bind(EndPoint);
Console.WriteLine("Listen at '{0}'", UnixEndPoint);
ServerSocket.Listen(128);
ListenCommon();
}