/// <summary> /// Get current process list /// </summary> /// <returns></returns> public List <Process> getProcessList() { if (!isConnected) { throwNotConnectedException(); } var packet = new Packets.IPacket() { id = lastPacketId++, dataType = RPC_PACKET.RPC_PROCESS_GET_LIST, dataLength = 0 }; sendPacket(packet); receivePacket <Packets.ResultPacket>(packet.id); List <Process> result = new List <Process>(); var processes = receivePacket <Packets.ProcessListPacket>(packet.id).listProcesses; foreach (var item in processes) { result.Add(new Process(item.name, item.processId)); } return(result); }
private void sendPacket(Packets.IPacket packet) { sock.Send(packet.serializeHeader()); if (packet.dataLength > 0) { sock.Send(packet.serialize()); } }
/// <summary> /// Disconnects from PlayStation 4 /// </summary> public void disconnect() { var packet = new Packets.IPacket() { id = lastPacketId++, dataType = RPC_PACKET.RPC_TERMINATE, dataLength = 0 }; sendPacket(packet); sock.Dispose(); isConnected = false; }