What I need is a C# class (and the test C# Windows Forms application) with the following functionality:
*Retrieves the list of available computers on the intranet (not the internet!)
*Check the named mailslot (e.g. "MyMailslot")? on the local machine to see if there is any messages has been received from other computers.
*If the message (in the local mailslot) has found - appends its own IP address and other info (e.g. "myInfo" string) and sends the modified message further to computers on the network into their mail slots.
Idea is very simple - if we run the application on several machines on the network - each running instance of the application will quickly identify all other "peers" running on the network - since each application will receive the message containing the IP addresses of other "peers".
The test application is a simple one-form application - with a multi-line text box on it. Each time a new message has received by the test application - the content of the message is appended to what is already in the text box.
## Deliverables
**If you have had previous experience with network programming for Win32/WinAPI (even though this project must be implemented in C# - I understand - there will be some C#<->WinAPI interop work involved ??" but this job has already been done for you by others ??" please check the links at the end of the description) - the project should not take more than two-three hours.**
**? **
**Here's the links to help you with the task:**
**Using a Mailslot to read/write data over a network**
**[login to view URL]**
**? **
**Fully functional Asynchronous Mailslot Control in C#**
**[login to view URL]**
**? **
**Retrieving a list of network computer names using C#**
**[login to view URL]**
**? **
**Notes:**
1. **I will be WILLING TO PAY MORE if (nice to have but NOT necessary):**
***your code will be working on the 64-bit version of Windows. But you would have to tell me (and show in the code) why is your code is 64-bit proof.**
***if you could implement mail slot sending using multicasting/broadcasting capabilities of Windows mailslots. You've got to understand: if you send 10 messages by calling a mailsot function 10 times - it is not multicasting/broadcasting.**
***If you could implement receiving mailslot messages in a asynchronous manner - e.g. your class will have event fired each time the message is arrived.**
**2. If you going to re-use some bits from codeproject links I posted her - please delete unused/not releavant code. I also expect that you won't include unused/not relevant code into your class. Thanks.**
**3. I have more projects coming VERY SOON. So if this project will be completed with the good quality - I'll leave great feedback for your job and would be keen to continue working with you.**
**If you have any project-related questions - please ask away. Thank you.**
**? **