So jetzt habe ich mal ein Readme runter getippt damit
so hoffe ich es auch jeder zu laufen bringt:

Code:
Readme zu Numberfive's RNCom / RN-Protoll Sachen

Installation:

Alle Programmteile in ein Beliebiges VerZeichnis Packen.

RNComNetworkLayer Einmal mit Parameter -RegServer starten da sollte
dann ein MessageBox Kommen und er sich sofort wieder Beenden. 
(Eintragen Regestry Windows).

die RNProtClient.dll mußt man mit dem programm regsvr32 (gehört zu windows)
in die regestry eintragen. Also regsvr32 RNProtClient.dll

Es werden nach dem Ersten Starten dann Ini Files erzeugt und die Muß
man dann anpassen.

Was macht was:

RNProtClient.dll Ist die Dll (Com-Objekt) Wo einem die Arbeit mit dem Protokoll
Abgenommen Wird. (Später)
Also Programme die das Protokoll Implementieren wollen müssen Hier drauf.

RNComNetworkLayer.exe das Programm händelt die Protokoll verschickung über
TCP Multicast. Com ExeServer SINGLETON

SerialServer.exe kümmert sich um die Daten/Protokoll umstetzung von TCP
nach Serial und umgekehrt.


Die RNComNetwork.ini

[RNComNetwork]
OwnIP=192.168.2.1		// Rechner IP wo das Programm läuft
MultiCastIP=224.0.0.0		// Die Multicast IP im Netz wenn man sich damit nicht aus kennt einfach so lassen den es gehen nicht alle adresse
MultiCastPort=44000             //  Wenn der Port nicht für was anders gebraucht wir so lassen   


Die SerialServer.ini

[SerialServer]
Comport=COM1			// Der port an dem der AVR Hängt
Baud=9600			// BAud rate der Rest ist Hard 8n1
ComNetwort=1			// Netz in dem der AVR Ist siehe RNCom definitionen

Das User Interface (RNProtClient.dll):

!! Achtung dieses Interface wir Sich noch Stark ändert den es soll Später das
bentzuen des Protokolls ganz einfach machen !!

Die Events:

[id(1), helpstring("Methode TraceIt")] HRESULT TraceIt(BSTR TraceTxt);
Ist eingendlich nicht so Wichtig aber hier sieht man was untendrunter so passiert

[id(2), helpstring("Methode NewData")] HRESULT NewData(LONG Network,LONG Adresse,LONG ID);
Wol das wichtigte Überhaupt ES sind neue daten da.
Netzwork und adresse wird hier mit geben damit man gleich weiß ist Broadcast oder für
mich

Die Proceduren:

[id(1), helpstring("Methode Init")] HRESULT Init();
das ist die Funktion um zu sagen nun kanns los gehen ich bin fertig

[id(3), helpstring("Methode SetOwnRNAdresse")] HRESULT SetOwnRNAdresse(LONG Adresse);
das ist meine Adresse es ist ein Long weil VB nix anders sauber erkennt
aber es sind nur werte zwischen 1 und 255 Zulässig

[id(4), helpstring("Methode GetDataAsString")] HRESULT GetDataAsString(LONG ID,[out, retval] BSTR *Data);
Hier kann man sich die daten holen als String daten die man normal nicht darstellen kann
werden in der Form <wert> übergeben also ein 0 byte sieht so aus <00>

[id(5), helpstring("Methode SetOwnRNNetwork")] HRESULT SetOwnRNNetwork(LONG Network);
das ist meine Netz zu dem ich gehöre es ist ein Long weil VB nix anders sauber erkennt
aber es sind nur werte zwischen 1 und 255 Zulässig

[id(6), helpstring("Methode SendString")] HRESULT SendString(LONG Network,LONG Adresse,BSTR bsData);
Hier mit Kann man daten Senden
Gleiches Spiel wie oben ein 0 Byte sendet man so <00> und ein < mit <<
Das habe ich so gemacht damit zur zeit mal alles testen kann Später muß man das Hofftlich nicht mehr benutzen