/// <summary> /// Fonction d'écoute lancée dans un thread. Elle attend les messages envoyés par le webservice via le PIPE et lui renvoie un résultat. /// </summary> private static void ListenRequest(string sNomPipe, int iNum) { string sMessage = string.Empty; string sMessageResultat = string.Empty; npssPipeClient[iNum] = new NamedPipeServerStream(sNomPipe); ssStreamString[iNum] = new StreamString(npssPipeClient[iNum]); npssPipeClient[iNum].WaitForConnection(); while (true) { sMessage = ssStreamString[iNum].ReadString(); Console.WriteLine(sMessage); if (IsValideJSON(sMessage) == false) { sMessageResultat = "KO"; } else { sMessageResultat = "OK"; qFIFO.Enqueue(sMessage); } /*string[] listParam = sMessage.Split('/'); * * LaunchProcess(listParam[0], int.Parse(listParam[1]), listParam[2]);*/ ssStreamString[iNum].WriteString(sMessageResultat); npssPipeClient[iNum].Flush(); } }
/// <summary> /// Fonction d'écoute lancée dans un thread. Elle attend les messages envoyés par le webservice via le PIPE et lui renvoie un résultat. /// </summary> private static void ListenRequest() { string sMessage = string.Empty; string sMessageResultat = string.Empty; npssPipeClient = new NamedPipeServerStream("PNPU_PIPE"); npssPipeClient.WaitForConnection(); ssStreamString = new StreamString(npssPipeClient); while (true) { sMessage = ssStreamString.ReadString(); Console.WriteLine(sMessage); if (IsValideJSON(sMessage) == false) { sMessageResultat = "KO"; } else { sMessageResultat = "OK"; Thread thread = new Thread(new ThreadStart(LaunchProcessFunction)); thread.Start(); } ssStreamString.WriteString(sMessageResultat); } }