private void ProcessObject(byte[] data) { try { object obj = ObjectSerializer.Deserialize <object>(data); Type objType = obj.GetType(); //ISLogger.Write($"Service: {objType.Name}"); if (objType == typeof(NIpcServiceStateMessage)) { ServiceStateReceived?.Invoke(this, obj as NIpcServiceStateMessage); } else if (objType == typeof(NIpcBasicMessage)) { NIpcBasicMessage msg = (NIpcBasicMessage)obj; HandleBasicMessage(msg); } else if (objType == typeof(NIpcDownloadFolderLocation)) { ReceivedDownloadFolder?.Invoke(this, (obj as NIpcDownloadFolderLocation).Folder); } }catch (Exception ex) { ISLogger.Write($"NamedIpc->Error reading object: {ex.Message}"); } }
private void HandleBasicMessage(NIpcBasicMessage message) { try { MessageReceived?.Invoke(this, message); } catch (Exception ex) { ISLogger.Write($"NamedIpc->Error handling message: {ex.Message}"); } }
private void IpcClient_MessageReceived(object sender, NIpcBasicMessage message) { if (message == NIpcBasicMessage.Connected) { OnConnect(); ipcClient.SendObject(NIpcBasicMessage.GetState); } else if (message == NIpcBasicMessage.ConnectionError || message == NIpcBasicMessage.ConnectionFailed || message == NIpcBasicMessage.Disconnected) { OnDisconnect(); } else if (message == NIpcBasicMessage.AttemptingConnection) { OnAttemptingConnection(); } else { MessageBox.Show("Service: " + message); } }