通达OA中采用了PHP的语言来进行编程,同样对于IM的有些操作则采用了Socket的方式进行通讯。最近做的一个程序需要采用C#来做,里面涉及到这块,采用C#进行了重写,具体还需要进一步进行测试效果。
using System; using System.Collections.Generic; using System.Net; using System.Net.Sockets; using System.Text; using System.Threading; namespace monitorFlowworkAndSubmit.DAL { class SendSocket { string MYOA_TDIM_ADDR = "127.0.0.1"; int MYOA_TDIM_PORT = xxxx; public string Send() { string rst = ""; IPAddress ip = IPAddress.Parse(MYOA_TDIM_ADDR); Socket clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram,ProtocolType.Udp); try { clientSocket.Connect(new IPEndPoint(ip, MYOA_TDIM_PORT)); Console.WriteLine("conn OK"); } catch (Exception ex) { rst = "conn err!"; return ex.ToString(); } try { string sendMessage = "x^a^admin"; clientSocket.Send(Encoding.ASCII.GetBytes(sendMessage)); } catch { clientSocket.Shutdown(SocketShutdown.Both); clientSocket.Close(); return "send error"; } return "OK"; } } }