The project requires that the freelancer modify an existing C# WPF application which transfers text messages and files between windows computers on an ‘Ethernet’ network.
The modifications must be made using VS2015 and the working WPF prototype (‘Current App’). The source code of the current app is attached as a 'Zip' file and this specification is attached in 'PDF' format.
The current app implements a server which accepts multiple clients and allows the user to send short text messages (‘Commands’) or files of any format between server and client(s) using TCP/IP. The WPF source application itself very small application and comprises less than 500 lines of C# code.
The modification requires that the transfer mechanism be enhanced to allow the transfer of a double array (of variable length) in either direction between the networked computers.
The delivered product must use the ‘[url removed, login to view]‘ Network library which can be downloaded from: ‘[url removed, login to view]’.
The delivered application is intended for ‘proof of concept’ only and the techniques which are developed will eventually be incorporated into a larger medical simulation system.
The source code of the solution has been supplied as a ‘Zip’ file. The ‘Nuget’ packages required for the solution must be restored before the app can be recompiled.
Current Application Functionality:
The application consists of a single form (shown above) which can function both as a ‘Server’ and a ‘Client’. The application is a modification of the ‘[url removed, login to view]’ ‘WPF’ example program and provides three functions:
1. It establishes a bi-directional TCP/IP connection between the server and the client application.
2. It enables the asynchronous transmission of files between the server and the client application.
3. It enables the asynchronous transmission of short text messages (“Commands”) between the server and the client application.
Additional Functionality Required:
The required additional functionality must be attached to the <Send Array to Remote> button (arrowed in green, above). When this button is tapped, the app will:
1. Instantiate a new double array containing between 10 and 25 real, random numbers. (A suitable method for generating such an array is shown below.)
2. List these numbers in “F3” format in the Communication Log (arrowed in red, above).
3. Encode the array in a suitable format and
4. Send it to the connected client.
On receipt of the array, the client will:
1. Decode the array which has been sent.
2. Reconstruct it as a double array.
3. List the elements of the array in “F3” format in the Communication Log.
The new functionality will be bi-directional and designed so that, in the future, it will be possible to transmit arrays of up to 150 real numbers at a frequency of 1 Hz.
Method for making a double array:
Random rnd = new Random();
int ArraySize = [url removed, login to view](10, 25);
var DoubleArray = new double[ArraySize];
for (int i = 0; i < ArraySize; i++)
double u1 = [url removed, login to view]();
DoubleArray[i] = i * u1;
The method should be called to generate a new array whenever the <Send Array to Remote> button is tapped.
Décerné à :
16 freelance ont fait une offre moyenne de 200 $ pour ce travail
As description in your requirement. I'm sure to complete this tool for you. inbox me if you have any question about my skill or this project. Thank for your attention HuyPQ.
Hi, I have 5 years experience in development using .Net framework from WPF to Azure. let's discuss your work in derails. add me on Skype: azeemrazzaq Thanks Azeem