/// <summary>
/// 连接外部程序发送数据
/// </summary>
/// <param name="IP"></param>
/// <param name="orderid"></param>
/// <param name="pro"></param>
/// <returns></returns>
string socketcom(string IP, int pro, string postdata)
{
string isreturn = "";
TcpClient tcp = new TcpClient();
try
{
tcp.Connect(IP, pro);//根据服务器的IP地址和侦听的端口连接
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString(), "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
//string Fil = DateTime.Now.ToString("yyyyMMddHHmmssffff") + ".html";
if (tcp.Connected)
{
//连接成功的消息机制 详细见DEMO
int bytesRead = 0;
//ShowGetData("成功连接上了服务器:", this.strIP.Text.ToString());
NetworkStream streamToServer = tcp.GetStream();
//string sbk = Fil + "|" + sqbeg + "|" + sqlend + "|" + sbktime;
//string sbkend = "123456";
byte[] buffer = Encoding.UTF8.GetBytes(postdata); //msg为发送的字符串
try
{
lock (streamToServer)
{
streamToServer.Write(buffer, 0, buffer.Length); // 发往服务器
}
//接收字符串
buffer = new byte[10000];
lock (streamToServer)
{
bytesRead = streamToServer.Read(buffer, 0, 10000);
if (bytesRead > 0)
{
string temp = Encoding.UTF8.GetString(buffer, 0, 10000);
//isreturn = temp;
isreturn = HttpUtility.UrlDecode(temp);
tcp.Close();
}
}
}
catch (ArgumentOutOfRangeException ae)
{
isreturn = "异常";
}
}
else
{
isreturn = "异常";
}
return isreturn;
}