public static int DDEntryPoint(int argc, [MarshalAs(UnmanagedType.LPArray, ArraySubType = UnmanagedType.LPStr, SizeParamIndex = 0)] string[] args) { try { var parsedArgs = new List <string>(); parsedArgs.AddRange(args); var instance = parsedArgs[0]; parsedArgs.RemoveAt(0); using (var I = new ServerInterface()) if (I.ConnectToInstance(instance, true).HasFlag(ConnectivityLevel.Connected)) { I.GetComponent <ITGInterop>().InteropMessage(String.Join(" ", parsedArgs)); } } catch { } return(0); }