[英]Receive acknowledgement from TCP Socket
我正在向lg iptv發送一些命令。 一些命令如:
Current temperature (Command: d n)
Checks the inside temperature.
Transmission
[d][n][ ][Set ID][ ][Data][Cr]
Data FF: Check the status
Acknowledgement
[n][ ][Set ID][ ][OK/NG][Data][x]
* Temperature is displayed as a hexadecimal value.
我用這行代碼創建一個tcp套接字:
Socket client = new Socket(AddressFamily.InterNetwork,
SocketType.Stream, ProtocolType.Tcp);
我連接並發送一些命令。 他們工作正常,但我不能用這些代碼行接收Ack:
data = data + "\r";
byte[] bytes = new byte[1024];
byte[] msg = Encoding.ASCII.GetBytes(data);
int bytesSent = user.Send(msg);
user.ReceiveTimeout = 2000;
int bytesReceived = user.Receive(bytes);
data = Encoding.ASCII.GetString(msg, 0, bytesReceived);
我使用了這個msdn的例子,並沒有收到任何東西。 https://msdn.microsoft.com/en-us/library/bew39x2a(v=vs.110).aspx
有沒有辦法收到那個確認? 我只能寫客戶端,服務器端就是那個電視。
無法收到確認。 因為它沒有暴露給應用程序級別。 TCP協議將繼續重新發送數據包,直到收到成功的ACK。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.