[C#] Probleme mit Remoting Tutorial von tutorials.de

Alaitoc

Erfahrenes Mitglied
Tach zusammen,
also habe das Problem das bei beinem Clientobject.cs (siehe Tutorial unter Clientklasse)
zweimal dieser Fehler kommt:
Code:
Der Typ- oder Namespacename "client" konnte nicht gefunden werden. (Fehlt eine using-Direktive oder ein Assemblyverweis?)
Dieser kommt bei:
Code:
private static client myParent;
und:
Code:
   public ClientObject(client parent, string mynick)
        {
            myParent = parent;
            nick = mynick;
            guid = Guid.NewGuid();
        }
Und bei Serverobject.cs (siehe Tutorial unter Serverklasse)
kommt dieser Fehler:
Code:
Der Name "client" ist im aktuellen Kontext nicht vorhanden.
und zwar bei:
Code:
        public bool _sendText(string text)
        {
            text = DateTime.Now.ToShortTimeString() + " " + client._nick + @"\> " + text;
            // ausgabe ein wenig verschönern
            foreach (IClient user in _clients.Values)
            {
                user._setText(text); // text wird übermittelt
            }
            return true;
        }

Schonmal Danke für die Hilfe
 
Zuletzt bearbeitet:
Hm...soweit gelöst...nur nu kommt:

Code:
Auf den Typ System.Runtime.Remoting.ObjRef kann aufgrund von Sicherheitseinschränkungen nicht zugegriffen werden.

bei:

Code:
remServer._login(myClient);
 
Denke es könnte vll. an
Code:
ChannelServices.RegisterChannel(myChannel,false);
liegen aber wenn ich es auf tru setzte funtzts auch net...wie stell ich den die Sicherheit da genau aus?
 
hi zusammen, habe dasselbe problem wie Alaitoc:
in der Zeile
Code:
remServer._login(myClient);
bekomme ich dieselbe exception.
nun hab ich aber gesehen, dass in der vorangestellten zeile
Code:
remServer = (IServer) Activator.GetObject(typeof(IServer), "tcp://" 
+ txtIP.Text.Trim() + ":" + txtPort.Text.Trim() + "/chat.rem");
beim debuggen folgender hinweis kommt:

System.Runtime.Remoting.RemotingException: Remoting cannot find field '__identity' on type 'System.MarshalByRefObject'.

Server stack trace:
at System.Object.GetFieldInfo(String typeName, String fieldName)
at System.Object.FieldGetter(String typeName, String fieldName, Object& val)
at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
at System.Runtime.Remoting.Messaging.StackBuilderSink.PrivateProcessMessage(RuntimeMethodHandle md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext)

Exception rethrown at [0]:
at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
at System.Object.FieldGetter(String typeName, String fieldName, Object& val)
at System.RuntimeFieldHandle.GetValue(Object instance, RuntimeTypeHandle fieldType, RuntimeTypeHandle declaringType, Boolean& domainInitialized)
at System.Reflection.RtFieldInfo.InternalGetValue(Object obj, Boolean doVisibilityCheck, Boolean doCheckConsistency)
at System.Reflection.RtFieldInfo.GetValue(Object obj)
at Microsoft.Office.Tools.Debugger.Tools.TryCreateDebuggerItem(MemberInfo member, Object target, __Item& item)

vermag irgendjemand da draussen ein licht in mein dunkel zu bringen ? Alaitoc, hast du das noch lösen können ?
danke schonmal vorweg und liebe grüsse :p
 
Ich hab es eher durch Zufall hinbekommen und mit etwas Hilfe von nem Kollegen, jedoch kann ich grad nicht nachschauen...weiß nurnoch das ich mich schonmal nicht an das Tutorial gehalten hatte..

Sobald ich in der Lage bin werde ich nachschauen.

MfG Alaitoc
 
Tut mir leid,
dass ich erst jetzt antworte...hatte viel zu tun und habe leider das Projekt nicht mehr gefunden...jedoch hab ich dort einfach den TCPClient und TCPListener benutzt.
Falls ich Zeit habe, kann ich mal schauen ob ich etwas Code zusammengebastelt kriege...versuch am besten Mal einfach eine Verbindung herzustellen.

Falls du das hingekriegt hast, musste immer deinen Text in Bytes umwandeln und dann versenden und der Empfänger muss sie dann zurückwandeln..

Ich meld mich wieder, sobald ich was habe.

MfG Alaitoc
 
Ziemlich verspätet,
aber hier mal trotzdem das Projekt...leider in VB.net...aber einfach mal in nen Converter zu C# schmeißen, falls du das in C# brauchst.

Musste die Datei leider doppelt verpacken, weil man hier kein *.rar hochladen kann.

MfG Alaitoc
 

Anhänge

  • TPCIP-Chat.zip
    65,8 KB · Aufrufe: 107

Neue Beiträge

Zurück