Click here to Skip to main content
Click here to Skip to main content
Add your own
alternative version

A Complete TCP Server/Client Communication and RMI Framework in C# .NET - Implementation

, 12 Jun 2011
In this article, I will explain the implementation of an Open Source lightweight framework (named Simple Client Server Library (SCS)) that is developed to create client/server applications using a simple Remote Method Invocation mechanism over TCP/IP.
TCPServClntCommRMIFrmwrk.zip
TCPServClntCommRMIFrmwrk
Scs-Binaries
Scs.dll
Scs-PerformanceTests
Messaging
ClientApp
bin
obj
x86
Debug
ClientApp.exe
ClientApp.pdb
DesignTimeResolveAssemblyReferencesInput.cache
TempPE
Release
ClientApp.exe
ClientApp.pdb
DesignTimeResolveAssemblyReferencesInput.cache
ResolveAssemblyReference.cache
TempPE
Properties
CommonLib
bin
obj
Debug
CommonLib.dll
CommonLib.pdb
DesignTimeResolveAssemblyReferencesInput.cache
TempPE
Release
CommonLib.dll
CommonLib.pdb
DesignTimeResolveAssemblyReferencesInput.cache
ResolveAssemblyReference.cache
TempPE
Properties
ServerApp
ServerApp.5.1.ReSharper.user
ServerApp.suo
bin
obj
x86
Debug
DesignTimeResolveAssemblyReferencesInput.cache
ResolveAssemblyReference.cache
ServerApp.exe
ServerApp.pdb
TempPE
Release
DesignTimeResolveAssemblyReferencesInput.cache
ResolveAssemblyReference.cache
ServerApp.exe
ServerApp.pdb
TempPE
Properties
ServerApp.suo
RMI
CalculatorClient
bin
obj
x86
Debug
CalculatorClient.exe
CalculatorClient.pdb
DesignTimeResolveAssemblyReferencesInput.cache
ResolveAssemblyReference.cache
TempPE
Release
CalculatorClient.exe
CalculatorClient.pdb
DesignTimeResolveAssemblyReferencesInput.cache
TempPE
Properties
CalculatorCommonLib
bin
obj
Debug
CalculatorCommonLib.dll
CalculatorCommonLib.pdb
DesignTimeResolveAssemblyReferencesInput.cache
TempPE
Release
CalculatorCommonLib.dll
CalculatorCommonLib.pdb
DesignTimeResolveAssemblyReferencesInput.cache
ResolveAssemblyReference.cache
TempPE
Properties
CalculatorServer
bin
obj
x86
Debug
CalculatorServer.exe
CalculatorServer.pdb
DesignTimeResolveAssemblyReferencesInput.cache
TempPE
Release
CalculatorServer.exe
CalculatorServer.pdb
DesignTimeResolveAssemblyReferencesInput.cache
ResolveAssemblyReference.cache
TempPE
Properties
SimpleCalculatorSystem.suo
Scs-Samples
CustomWireProtocol
ClientApp
bin
obj
x86
Debug
ClientApp.exe
ClientApp.pdb
DesignTimeResolveAssemblyReferencesInput.cache
ResolveAssemblyReference.cache
TempPE
Release
ClientApp.exe
ClientApp.pdb
DesignTimeResolveAssemblyReferencesInput.cache
TempPE
Properties
CommonLib
bin
obj
Debug
CommonLib.dll
CommonLib.pdb
DesignTimeResolveAssemblyReferencesInput.cache
ResolveAssemblyReference.cache
TempPE
Release
CommonLib.dll
CommonLib.pdb
DesignTimeResolveAssemblyReferencesInput.cache
TempPE
Properties
ServerApp
ServerApp.suo
bin
obj
x86
Debug
DesignTimeResolveAssemblyReferencesInput.cache
ServerApp.exe
ServerApp.pdb
TempPE
Release
DesignTimeResolveAssemblyReferencesInput.cache
ResolveAssemblyReference.cache
ServerApp.exe
ServerApp.pdb
TempPE
Properties
ServerApp.suo
IrcChatSystem
ChatClientApp
bin
Client
Controls
Images
app_icon.ico
sound_off.png
sound_on.png
text_color_picker.ico
user_female.png
user_male.png
obj
x86
Debug
ChatClientApp.exe
ChatClientApp.g.resources
ChatClientApp.pdb
ChatClientApplication.baml
ChatClientApp_MarkupCompile.cache
ChatClientApp_MarkupCompile.i.cache
ChatClientApp_MarkupCompile.i.lref
ChatClientApp_MarkupCompile.lref
Controls
MessagingAreaControl.baml
UserCardControl.baml
DesignTimeResolveAssemblyReferences.cache
DesignTimeResolveAssemblyReferencesInput.cache
GenerateResource.read.1.tlog
GenerateResource.write.1.tlog
Hik.Samples.Scs.IrcChat.Properties.Resources.resources
TempPE
Properties.Resources.Designer.cs.dll
Windows
MainWindow.baml
PrivateChatWindow.baml
TextColorPicker.baml
Release
ChatClientApp.exe
ChatClientApp.g.resources
ChatClientApp.pdb
ChatClientApplication.baml
ChatClientApp_MarkupCompile.cache
ChatClientApp_MarkupCompile.i.cache
ChatClientApp_MarkupCompile.i.lref
ChatClientApp_MarkupCompile.lref
Controls
MessagingAreaControl.baml
UserCardControl.baml
DesignTimeResolveAssemblyReferences.cache
DesignTimeResolveAssemblyReferencesInput.cache
GenerateResource.read.1.tlog
GenerateResource.write.1.tlog
Hik.Samples.Scs.IrcChat.Properties.Resources.resources
TempPE
Properties.Resources.Designer.cs.dll
Windows
MainWindow.baml
PrivateChatWindow.baml
TextColorPicker.baml
Properties
Settings.settings
Sounds
incoming_message.wav
Windows
ChatCommonLib
bin
IrcChat
Arguments
Contracts
Exceptions
obj
Debug
ChatCommonLib.dll
ChatCommonLib.pdb
DesignTimeResolveAssemblyReferencesInput.cache
TempPE
Release
ChatCommonLib.dll
ChatCommonLib.pdb
DesignTimeResolveAssemblyReferencesInput.cache
ResolveAssemblyReference.cache
TempPE
Properties
ChatServerApp
app_icon.ico
bin
Images
app_icon.ico
IrcChat
Server
obj
x86
Debug
ChatServerApp.exe
ChatServerApp.g.resources
ChatServerApp.pdb
ChatServerApp_MarkupCompile.cache
ChatServerApp_MarkupCompile.i.cache
DesignTimeResolveAssemblyReferences.cache
DesignTimeResolveAssemblyReferencesInput.cache
GenerateResource.read.1.tlog
GenerateResource.write.1.tlog
Hik.Samples.Scs.Properties.Resources.resources
IrcChat
Server
MainWindow.baml
ResolveAssemblyReference.cache
TempPE
Properties.Resources.Designer.cs.dll
Release
ChatServerApp.exe
ChatServerApp.g.resources
ChatServerApp.pdb
ChatServerApp_MarkupCompile.cache
ChatServerApp_MarkupCompile.i.cache
DesignTimeResolveAssemblyReferences.cache
DesignTimeResolveAssemblyReferencesInput.cache
GenerateResource.read.1.tlog
GenerateResource.write.1.tlog
Hik.Samples.Scs.Properties.Resources.resources
IrcChat
Server
MainWindow.baml
ResolveAssemblyReference.cache
TempPE
Properties.Resources.Designer.cs.dll
Properties
Settings.settings
IrcChatSystem.suo
OnlinePhoneBook
OnlinePhoneBook.suo
PhoneBookClient
bin
obj
x86
Debug
DesignTimeResolveAssemblyReferencesInput.cache
PhoneBookClient.exe
PhoneBookClient.pdb
TempPE
Release
DesignTimeResolveAssemblyReferencesInput.cache
PhoneBookClient.exe
PhoneBookClient.pdb
ResolveAssemblyReference.cache
TempPE
Properties
PhoneBookCommonLib
bin
obj
Debug
DesignTimeResolveAssemblyReferencesInput.cache
PhoneBookCommonLib.dll
PhoneBookCommonLib.pdb
TempPE
Release
DesignTimeResolveAssemblyReferencesInput.cache
PhoneBookCommonLib.dll
PhoneBookCommonLib.pdb
ResolveAssemblyReference.cache
TempPE
Properties
PhoneBookServer
bin
obj
x86
Debug
DesignTimeResolveAssemblyReferencesInput.cache
PhoneBookServer.exe
PhoneBookServer.pdb
ResolveAssemblyReference.cache
TempPE
Release
DesignTimeResolveAssemblyReferencesInput.cache
PhoneBookServer.exe
PhoneBookServer.pdb
TempPE
Properties
SimlifiedPhoneBookClient
bin
obj
x86
Debug
DesignTimeResolveAssemblyReferencesInput.cache
SimlifiedPhoneBookClient.exe
SimlifiedPhoneBookClient.pdb
TempPE
Properties
SimpleCalculatorSystem
CalculatorClient
bin
obj
x86
Debug
CalculatorClient.exe
CalculatorClient.pdb
DesignTimeResolveAssemblyReferencesInput.cache
ResolveAssemblyReference.cache
TempPE
Properties
CalculatorCommonLib
bin
obj
Debug
CalculatorCommonLib.dll
CalculatorCommonLib.pdb
DesignTimeResolveAssemblyReferencesInput.cache
TempPE
Properties
CalculatorServer
bin
obj
x86
Debug
CalculatorServer.exe
CalculatorServer.pdb
DesignTimeResolveAssemblyReferencesInput.cache
TempPE
Properties
SimpleCalculatorSystem.suo
SimpleMessaging
ClientApp
bin
obj
x86
Debug
ClientApp.exe
ClientApp.pdb
DesignTimeResolveAssemblyReferencesInput.cache
ResolveAssemblyReference.cache
TempPE
Properties
RequestReplyStyleClient
bin
obj
x86
Debug
DesignTimeResolveAssemblyReferencesInput.cache
RequestReplyStyleClient.exe
RequestReplyStyleClient.pdb
ResolveAssemblyReference.cache
TempPE
Properties
ServerApp
bin
obj
x86
Debug
DesignTimeResolveAssemblyReferencesInput.cache
ServerApp.exe
ServerApp.pdb
TempPE
Properties
SimpleMessaging.suo
SynchronizedClient
bin
obj
x86
Debug
DesignTimeResolveAssemblyReferencesInput.cache
SynchronizedClient.exe
SynchronizedClient.pdb
TempPE
Properties
Scs-Sources
Scs
Scs.suo
bin
Collections
Communication
Scs
ScsServices
Client
Communication
Messages
Service
Client
Tcp
Communication
Channels
Tcp
EndPoints
Tcp
Messages
Messengers
Protocols
BinarySerialization
Server
Tcp
Diagrams
ChannelsDiagram.cd
ConnListenerDiagram.cd
EndPointsDiagram.cd
MessageObjectsDiagram.cd
RequestReplyMessengerDiagram.cd
RmiMessagesDiagram.cd
ScsClientDiagram.cd
ScsServerClientDiagram.cd
ScsServerDiagram.cd
ScsServiceClientDiagram.cd
ScsServiceDiagram.cd
ServiceSideClientDiagram.cd
WireProtocolsDiagram.cd
obj
Debug
DesignTimeResolveAssemblyReferences.cache
DesignTimeResolveAssemblyReferencesInput.cache
ResolveAssemblyReference.cache
Scs.dll
Scs.pdb
TempPE
Release
DesignTimeResolveAssemblyReferencesInput.cache
Scs.dll
Scs.pdb
TempPE
Properties
Threading

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Halil ibrahim Kalkan
Software Developer Sestek
Turkey Turkey
I have started programming at 14 years old using Pascal as hobby. Then I interested in web development (HTML, JavaScript, ASP...) before university.
 
I graduated from Sakarya University Computer Engineering. At university, I learned C++, Visual Basic.NET, C#, ASP.NET and Java. I partly implemented ARP, IP and TCP protocols in Java as my final term project.
 
Now, I am working in a private company in Istanbul as a senior software architect & developer. Working on Windows and web based software development using C# and ASP.NET MVC.
 
http://www.halilibrahimkalkan.com
Follow on   Twitter   LinkedIn

| Advertise | Privacy | Mobile
Web02 | 2.8.140821.2 | Last Updated 13 Jun 2011
Article Copyright 2011 by Halil ibrahim Kalkan
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid