public override void ProcessRequest() { StartProcessReq req = mSocketTalker.ReceiveObject <StartProcessReq>(); StartProcessRes res = new StartProcessRes(); try { ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.FileName = req.FileName; startInfo.Arguments = req.Arguments; startInfo.CreateNoWindow = req.CreateNoWindow; startInfo.UseShellExecute = req.UseShellExecute; Process.Start(startInfo); mSocketTalker.SendInt(ProtocolTypes.TYPE_START_PROCESS); mSocketTalker.SendObject(res); } catch (Exception e) { res.ErorrOccured = true; res.ErrorMessage = e.Message; mSocketTalker.SendInt(ProtocolTypes.TYPE_START_PROCESS); mSocketTalker.SendObject(res); } }
private void openRemoteStripMenuItem_Click(object sender, EventArgs e) { StartProcessReq req = new StartProcessReq(); req.FileName = "explorer"; req.Arguments = Path.Combine(mCurrentDirectory, mContentList.SelectedItems[0].Text); req.UseShellExecute = false; req.CreateNoWindow = true; mClient.SendRequest(ProtocolTypes.TYPE_START_PROCESS, req); }
private void mExcuteRemoteHideWindowMenuItem_Click(object sender, EventArgs e) { InputDialog dialog = new InputDialog(); dialog.Title = "请输入参数,如果没有请点击确定"; dialog.AllowEmpty = true; if (dialog.ShowDialog() == DialogResult.OK) { StartProcessReq req = new StartProcessReq(); req.FileName = Path.Combine(mCurrentDirectory, mContentList.SelectedItems[0].Text); req.Arguments = dialog.Result; req.UseShellExecute = false; req.CreateNoWindow = true; mClient.SendRequest(ProtocolTypes.TYPE_START_PROCESS, req); } }