faq обучение настройка
Текущее время: Чт мар 28, 2024 17:17

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: D-Link DGS-1510-52X Mass Control C# program
СообщениеДобавлено: Чт мар 30, 2023 09:35 
Не в сети

Зарегистрирован: Чт мар 30, 2023 09:23
Сообщений: 2
Здравствуйте, подскажите пожалуйста, есть ли возможность выполнять команды отправленные из C#, допустим путем: (конечно может быть другое решение)

SshClient connect = new SshClient("10.50.50.10", 22, Login.Text.Trim(), Password.Password.Trim());
connect.ConnectionInfo.Timeout = TimeSpan.FromSeconds(30);
connect.Connect();
SshCommand runCC = connect.CreateCommand("terminal length 0\nsh run\nexit\n");
runCC.CommandTimeout = TimeSpan.FromSeconds(5);
runCC.Execute();
runCC.Dispose();
connect.Disconnect();
RichTextOut.AppendText(runCC.Result);


Эта команда должна была вывести весь running-config и выйти из ssh соединения, но она вообще ничего не выводит.
После выполнения подключения, Renci.SshNet считает, что он подключен, но D-Link не выводит в web-интерфейсе, что он подключен.

Мне необходимо просто отправлять команды, а не создавать реальное Async соединение с D-Link, так, что пожалуйста не предлагайте такого.
Заранее спасибо за помощь!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: D-Link DGS-1510-52X Mass Control C# program
СообщениеДобавлено: Сб апр 01, 2023 05:29 
Не в сети

Зарегистрирован: Чт мар 30, 2023 09:23
Сообщений: 2
Если кому то будет интересно, это делается вот так:

var listLineRunConfig = new List<string>();
var client = new SshClient("10.50.50.10", 22, Dispatcher.Invoke(() => Login.Text), Dispatcher.Invoke(() => Password.Password));
client.Connect();
var shell = client.CreateShellStream("terminal", 80, 24, 800, 600, 1024);

var cmd = "terminal length 0\nsh run\n";
shell.WriteLine(cmd);

while (true)
{
var line = shell.ReadLine();
Console.WriteLine(line);
listLineRunConfig.Add(line);
if (line.Contains("end")) break;
}
client.Disconnect();


Но нужно будет доделать, так как вывод сейчас делается непрерываясь. Это на том, что я остановился.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: Google [Bot] и гости: 33


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB