2016-10-06 2 views
0

У меня есть проблемы, чтобы отправить Ctrl +/Ctrl +Q.C# Ctrl + а/Ctrl + Q через Telnet не работает

Я стараюсь это:

byte[] buffer = new byte[1]; 
buffer[0] = 1; //Ctrl+a 
sys.WriteChar(buffer); 
byte[] buffer1 = new byte[1]; 
buffer1[0] = 17;//Ctrl+q 
sys.WriteChar(buffer1); 

и это моя функция:

public void WriteChar(byte[] Value) 
{ 
    if (!tcpSocket.Connected) return; 
    tcpSocket.GetStream().Write(Value, 0, 1); 
} 

public void Write(string cmd) 
{ 
    if (!tcpSocket.Connected) return; 
    byte[] buf = System.Text.ASCIIEncoding.ASCII.GetBytes(cmd.Replace("\0xFF", "\0xFF\0xFF")); 
    tcpSocket.GetStream().Write(buf, 0, buf.Length); 
} 

Write() только для строк, это хорошо работает. Но WriteChar() не работает, он не понимает Ctrl - с//д ...

кто Видит ли моя ошибка? Есть идеи?

Спасибо заранее!

Homeros

ответ

0

Вы пробовали использовать ожидать байт кода "^ Q" строка?

+0

Да, это не работает. На сервере появляется сообщение о том, что команда неизвестна. – Homeros

+0

Я не знаю, тогда вам, возможно, придется попробовать сниффер трафика и взглянуть внутрь этого случая, когда его делает собственный клиент. К сожалению, у меня нет серверов для тестирования. –

Смежные вопросы