通達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"; } }}