最近,我们发现了在Citrix环境中与TCP / IP数据包通信的问题。
数据包的大小超过1GB,并且它有所有空格。使用TCP / IP在.net到.net应用程序之间进行通信。发件人应用程序作为citrix的应用程序发布,接收器应用程序在服务器上运行。
当发件人应用程序直接从桌面运行(而不是citrix xen应用程序)时,数据包小于25Kb并且通信没有问题。
发送数据的示例代码..
private void SendData(byte[] outbound_Message)
{
try
{
sendArgs = new SocketAsyncEventArgs();
sendArgs.SetBuffer(outbound_Message, 0, outbound_Message.Length);
sendArgs.UserToken = socket;
socket.SendAsync(sendArgs);
}
catch (Exception ex)
{
UpdateLog(new HDMMessage { Message = MessageHelpers.GetLogMessage(ex, "SendData Failed:") });
}
}