У меня есть 2 кнопки, Подключиться и Отправьте команду. В первой кнопке я создаю соединение с моим сервером и во второй отправке команды. Коды, как показано ниже:Ошибка при использовании sharpSSH в C# для нескольких кнопок
public void button1_Click(object sender, EventArgs e)
{
SshExec shell = new SshExec("hostname", "username", "password");
shell.Connect();
}
public void button2_Click(object sender, EventArgs e)
{
shell.RunCommand("ls");
}
Теперь ошибка в "shell.RunCommand (" LS ");" Я получаю «Обозначение« shell »не содержится в текущем контексте». Я новичок в C# (всего 2 дня) и не имею большой идеи, поэтому, пожалуйста, если кто-то может помочь. То, что я ожидаю, не является ошибкой, и команда должна быть правильно отправлена на терминал при нажатии второй кнопки. В конце жаль плохого форматирования кода, пожалуйста, сообщите мне, если требуется какая-либо дополнительная информация.
Ваша переменная 'shell' является локальным по отношению к первому способу. Это не существует вне его. Переместите объявление на уровень класса. –
Спасибо Сами за предложение, но из-за некоторых других ограничений я не могу переместить его в класс. Есть ли другой способ, с помощью которого я могу сделать эту переменную доступной для всех? –
Объясните, что это за ограничения. Потому что это правильный способ сделать это. Конечно, вы можете играть с одиночными играми, но это очень плохой дизайн. –