2 düğmem var, Bağlan ve Komut Gönder Komutu. İlk tuşta sunucumla bağlantı oluşturuyorum ve ikincisinde bir komut gönderiyorum. kodlar aşağıdaki gibidir:Birden çok düğme için C# 'da sharpSSH kullanırken hata
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");
}
Şimdi hata "shell.RunCommand (" ls ") yer alır;" "Geçerli kabukta 'kabuk' adı bulunmuyor" alıyorum. Ben C# (sadece 2 gün) için yeni ve çok fazla bir fikrim yok, bu yüzden lütfen herkes yardımcı olabilir. Beklediğim şey hata değil ve ikinci düğmeye basıldığında terminalin doğru şekilde gönderilmesi. Sonunda, kodun hatalı biçimlendirilmesi için özür dilerim, ek bilgi gerekiyorsa lütfen bana bildirin.
Değişkeniniz 'shell' ilk yönteme yerel. Dışarısı yoktur. Bildirimi sınıf seviyesine taşıyın. –
Öneri için teşekkürler Sami ama bazı diğer kısıtlamalar nedeniyle onu sınıfa taşıyamam. Bu değişkeni herkes tarafından erişilebilir hale getirmenin başka bir yolu var mı? –
Bu kısıtlamaların ne olduğunu açıklayın. Çünkü bunu yapmanın doğru yolu budur. Tabii ki singletons ile oynayabilirsiniz, ama bu çok zayıf bir tasarım. –