mirror of
https://github.com/proxysu/ProxySU.git
synced 2024-11-29 00:26:09 +03:00
优化Shell命令执行错误的判断与回显
This commit is contained in:
parent
f54da666ca
commit
944929d162
@ -5,7 +5,7 @@
|
|||||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
xmlns:local="clr-namespace:ProxySU"
|
xmlns:local="clr-namespace:ProxySU"
|
||||||
mc:Ignorable="d"
|
mc:Ignorable="d"
|
||||||
Title="ProxySU - v2.4.12" Height="675" Width="650">
|
Title="ProxySU - v2.4.13" Height="675" Width="650">
|
||||||
<!--以下样式参考自:https://yq.aliyun.com/articles/331878
|
<!--以下样式参考自:https://yq.aliyun.com/articles/331878
|
||||||
https://docs.microsoft.com/en-us/dotnet/desktop-wpf/fundamentals/styles-templates-overview-->
|
https://docs.microsoft.com/en-us/dotnet/desktop-wpf/fundamentals/styles-templates-overview-->
|
||||||
<Window.Resources>
|
<Window.Resources>
|
||||||
|
@ -6844,50 +6844,57 @@ namespace ProxySU
|
|||||||
#region 测试用代码
|
#region 测试用代码
|
||||||
private void Button_Click(object sender, RoutedEventArgs e)
|
private void Button_Click(object sender, RoutedEventArgs e)
|
||||||
{
|
{
|
||||||
string pwdir = AppDomain.CurrentDomain.BaseDirectory;
|
//string pwdir = AppDomain.CurrentDomain.BaseDirectory;
|
||||||
MessageBox.Show(pwdir);
|
//MessageBox.Show(pwdir);
|
||||||
//ConnectionInfo connectionInfo = GenerateConnectionInfo();
|
ConnectionInfo connectionInfo = GenerateConnectionInfo();
|
||||||
//if (connectionInfo == null)
|
if (connectionInfo == null)
|
||||||
//{
|
{
|
||||||
// //****** "远程主机连接信息有误,请检查!" ******
|
//****** "远程主机连接信息有误,请检查!" ******
|
||||||
// MessageBox.Show(Application.Current.FindResource("MessageBoxShow_ErrorHostConnection").ToString());
|
MessageBox.Show(Application.Current.FindResource("MessageBoxShow_ErrorHostConnection").ToString());
|
||||||
// return;
|
return;
|
||||||
//}
|
}
|
||||||
//using (var client = new SshClient(connectionInfo))
|
using (var client = new SshClient(connectionInfo))
|
||||||
//{
|
{
|
||||||
// client.Connect();
|
client.Connect();
|
||||||
// if (client.IsConnected == true)
|
if (client.IsConnected == true)
|
||||||
// {
|
{
|
||||||
// //******"主机登录成功"******
|
//******"主机登录成功"******
|
||||||
// SetUpProgressBarProcessing(3);
|
SetUpProgressBarProcessing(3);
|
||||||
// currentStatus = Application.Current.FindResource("DisplayInstallInfo_LoginSuccessful").ToString();
|
currentStatus = Application.Current.FindResource("DisplayInstallInfo_LoginSuccessful").ToString();
|
||||||
// MainWindowsShowInfo(currentStatus);
|
MainWindowsShowInfo(currentStatus);
|
||||||
|
|
||||||
// }
|
}
|
||||||
// //string cmdErr = client.RunCommand(@"aaa ee").Error;
|
//string cmdErr = client.RunCommand(@"aaa ee").Error;
|
||||||
// //MessageBox.Show(cmdErr);
|
//MessageBox.Show(cmdErr);
|
||||||
// SshCommand cmdResult = client.RunCommand(@"pwd");
|
SshCommand cmdResult = client.RunCommand(@"pwd");
|
||||||
// string result = cmdResult.Result;
|
string result = cmdResult.Result;
|
||||||
// MessageBox.Show("result:"+result);
|
MessageBox.Show("result:" + result);
|
||||||
// string error = cmdResult.Error;
|
string error = cmdResult.Error;
|
||||||
// MessageBox.Show("err:"+error);
|
MessageBox.Show("err:" + error);
|
||||||
|
|
||||||
// SshCommand cmdResultCat = client.RunCommand(@"cat tt.t");
|
int cmdExitStatus = cmdResult.ExitStatus;
|
||||||
// string resultCat = cmdResultCat.Result;
|
MessageBox.Show("cmdExitStatus:" + cmdExitStatus.ToString());
|
||||||
// MessageBox.Show("resultCat:" + resultCat);
|
|
||||||
// string errorCat = cmdResultCat.Error;
|
SshCommand cmdResultCat = client.RunCommand(@"cat tt.t");
|
||||||
// MessageBox.Show("errCat:" + errorCat);
|
string resultCat = cmdResultCat.Result;
|
||||||
//SoftInstalledSuccessOrFail(client, "v2ray", @"/usr/local/bin/v2ray");
|
MessageBox.Show("resultCat:" + resultCat);
|
||||||
//CaddyInstall(client);
|
string errorCat = cmdResultCat.Error;
|
||||||
//if (client.IsConnected == true)
|
MessageBox.Show("errCat:" + errorCat);
|
||||||
//{
|
|
||||||
// MessageBox.Show("Connected");
|
cmdExitStatus = cmdResultCat.ExitStatus;
|
||||||
//}
|
MessageBox.Show("cmdExitStatus:" + cmdExitStatus.ToString());
|
||||||
//if (client.IsConnected == false)
|
|
||||||
//{
|
//SoftInstalledSuccessOrFail(client, "v2ray", @"/usr/local/bin/v2ray");
|
||||||
// MessageBox.Show("disConnected");
|
//CaddyInstall(client);
|
||||||
//}
|
//if (client.IsConnected == true)
|
||||||
//}
|
//{
|
||||||
|
// MessageBox.Show("Connected");
|
||||||
|
//}
|
||||||
|
//if (client.IsConnected == false)
|
||||||
|
//{
|
||||||
|
// MessageBox.Show("disConnected");
|
||||||
|
//}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private string CaddyInstallTest(SshClient client)
|
private string CaddyInstallTest(SshClient client)
|
||||||
@ -7014,9 +7021,15 @@ namespace ProxySU
|
|||||||
{
|
{
|
||||||
TextBoxMonitorCommandResults.Dispatcher.BeginInvoke(updateMonitorAction, TextBoxMonitorCommandResults, sshShellCommand);//显示执行的命令
|
TextBoxMonitorCommandResults.Dispatcher.BeginInvoke(updateMonitorAction, TextBoxMonitorCommandResults, sshShellCommand);//显示执行的命令
|
||||||
SshCommand cmdResult = client.RunCommand(sshShellCommand);
|
SshCommand cmdResult = client.RunCommand(sshShellCommand);
|
||||||
string currentShellCommandResult = cmdResult.Result;
|
string currentShellCommandResult = cmdResult.Result; //命令执行成功的结果
|
||||||
string currentShellCommandError = cmdResult.Error;
|
string currentShellCommandError = cmdResult.Error; //命令执行出错的提示
|
||||||
if (String.IsNullOrEmpty(currentShellCommandResult) == true) { currentShellCommandResult = currentShellCommandError; }
|
int cmdExitStatus = cmdResult.ExitStatus;
|
||||||
|
//if (String.IsNullOrEmpty(currentShellCommandResult) == true)
|
||||||
|
if(cmdExitStatus == 1)
|
||||||
|
{
|
||||||
|
//currentShellCommandResult = currentShellCommandError;
|
||||||
|
TextBoxMonitorCommandResults.Dispatcher.BeginInvoke(updateMonitorAction, TextBoxMonitorCommandResults, currentShellCommandError);//显示命令执行错误的提示
|
||||||
|
}
|
||||||
TextBoxMonitorCommandResults.Dispatcher.BeginInvoke(updateMonitorAction, TextBoxMonitorCommandResults, currentShellCommandResult);//显示命令执行的结果
|
TextBoxMonitorCommandResults.Dispatcher.BeginInvoke(updateMonitorAction, TextBoxMonitorCommandResults, currentShellCommandResult);//显示命令执行的结果
|
||||||
|
|
||||||
return currentShellCommandResult;
|
return currentShellCommandResult;
|
||||||
|
@ -51,5 +51,5 @@ using System.Windows;
|
|||||||
// 可以指定所有值,也可以使用以下所示的 "*" 预置版本号和修订号
|
// 可以指定所有值,也可以使用以下所示的 "*" 预置版本号和修订号
|
||||||
// 方法是按如下所示使用“*”: :
|
// 方法是按如下所示使用“*”: :
|
||||||
// [assembly: AssemblyVersion("1.0.*")]
|
// [assembly: AssemblyVersion("1.0.*")]
|
||||||
[assembly: AssemblyVersion("2.4.12.0")]
|
[assembly: AssemblyVersion("2.4.13.0")]
|
||||||
[assembly: AssemblyFileVersion("2.4.12.0")]
|
[assembly: AssemblyFileVersion("2.4.13.0")]
|
||||||
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user