void ISingleInstanceEnforcer.OnMessageReceived(MessageEventArgs e) { OnMessageReceivedInvoker invoker = delegate(MessageEventArgs eventArgs) { try { string msg = eventArgs.Message as string; if (!string.IsNullOrEmpty(msg) && msg == "restore") { Restore(); } else { string[] args = eventArgs.Message as string[]; if (args != null) { // A obligatory recovery of window, otherwise it will fail to load Restore(); SetArgs(args); LoadArgs(); } } } catch (Exception ex) { Logger.LogWrite("AppHost.OnMessageReceived(): " + ex.Message); } }; //if (InvokeRequired) { // Invoke(invoker, e); //} else { invoker(e); //} }
public void OnMessageReceived(MessageEventArgs e) { OnMessageReceivedInvoker invoker = delegate(MessageEventArgs eventArgs) { string[] args = eventArgs.Message as string[]; BringApplicationToFront(); ParseArgs(args); }; if (InvokeRequired) { Invoke(invoker, e); } else { invoker(e); } }