public void SetTask(Message message) { try { var thread = new Thread(new ThreadStart(() => { try { TraceOps.Out("WebControl Client recived Message: " + message.GetCommand()); if (message.GetCommand() == "open_browser") { var d = new PluginCallback(_control.StartBrowser); _mainForm.Invoke(d, new object[] { }); } if (message.GetCommand() == "open_custom_browser") { var d = new PluginCallback(_control.StartCustomBrowser); _mainForm.Invoke(d, new object[] { }); } if (message.GetCommand() == "close_browser") { var d = new PluginCallback(_control.StopBrowser); _mainForm.Invoke(d, new object[] { }); } if (message.GetCommand() == "change_url") { var p = message.GetParameter(); var value = ""; if (p.GetLength(0) > 0 && p.GetLength(1) > 1) { value = Message.GetAttribute(p, "url"); } if (value != "") { _control.SetUrl(value); } var d = new PluginCallback(_control.ChangeUrl); _mainForm.Invoke(d, new object[] { }); } } catch (Exception e) { TraceOps.Out(e.ToString()); } })); thread.Start(); } catch (Exception e) { TraceOps.Out(e.ToString()); } }