begin process at 2010 02 10 05:22:43
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C#

 > 

Archives

 > 

.NET

 > 

remoting icollection


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

remoting icollection

vendredi 6 janvier 2006 à 14:23:03 | remoting icollection

dieulapin

Bonjour,

J'essaye de faire du remoting en .net.
Je veux creer un objet activable de type icollection

voila comment j'ai procedé :
  • une classe Person
  • une classe RemoteCollection qui herite de MarshalByRef et qui Implemente ICollection avec une arraylist
  • une classe Persons qui est une collection de Person qui herite de RemoteCollection 
J'ai un fichier de configuration pour activer ( balise activated ) Person et Persons par tcp.

Voila lorsque je lance mon client  Person s'active bien mais pour Persons j'ai une exception qui est levé : "En raison de restriction de sécurité, le type System.Runtime.Remoting.ObjRef est inaccessible."

Si quelqu'un peu m'apporter des renseignement sur le remooting de collection?

Merci d'avance

************** Texte de l'exception **************
System.Runtime.Serialization.SerializationException: En raison de restrictions de sécurité, le type System.Runtime.Remoting.ObjRef est inaccessible. ---> System.Security.SecurityException: Échec de la demande.
   at System.Security.SecurityRuntime.FrameDescSetHelper(FrameSecurityDescriptor secDesc, PermissionSet demandSet, PermissionSet& alteredDemandSet)
   at System.Runtime.Serialization.FormatterServices.nativeGetSafeUninitializedObject(RuntimeType type)
   at System.Runtime.Serialization.FormatterServices.GetSafeUninitializedObject(Type type)
   --- Fin de la trace de la pile d'exception interne ---

Server stack trace:
   at System.Runtime.Serialization.FormatterServices.GetSafeUninitializedObject(Type type)
   at System.Runtime.Serialization.Formatters.Binary.ObjectReader.ParseObject(ParseRecord pr)
   at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Parse(ParseRecord pr)
   at System.Runtime.Serialization.Formatters.Binary.__BinaryParser.ReadObjectWithMapTyped(BinaryObjectWithMapTyped record)
   at System.Runtime.Serialization.Formatters.Binary.__BinaryParser.ReadObjectWithMapTyped(BinaryHeaderEnum binaryHeaderEnum)
   at System.Runtime.Serialization.Formatters.Binary.__BinaryParser.Run()
   at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, IMethodCallMessage methodCallMessage)
   at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, IMethodCallMessage methodCallMessage)
   at System.Runtime.Remoting.Channels.CoreChannel.DeserializeBinaryRequestMessage(String objectUri, Stream inputStream, Boolean bStrictBinding, TypeFilterLevel securityLevel)
   at System.Runtime.Remoting.Channels.BinaryServerFormatterSink.ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, Stream& responseStream)

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 Library.Contact.Persons.Add(Person person)

vendredi 6 janvier 2006 à 16:04:36 | Re : remoting icollection

Homerrrrr

Réponse acceptée !
Lorsque tu démarre ton objet coté serveur tu fais quelque chose du genre (en considérant un port de 1069) :

TcpChannel channel = new TcpChannel(1069);

Essaye en faisant :

BinaryServerFormatterSinkProvider provider = new BinaryServerFormatterSinkProvider();
provider.TypeFilterLevel = System.Runtime.Serialization.Formatters.TypeFilterLevel.Full;

IDictionary prop = new Hashtable();
prop["bindTo"] = "127.0.0.1";
prop["port"] = 1069;

TcpChannel channel = new TcpChannel(prop, null, provider);

Ce qui change c'est surtout le fait de mettre le niveau de filtre en "full".
samedi 7 janvier 2006 à 15:50:38 | Re : remoting icollection

dieulapin

Merci beaucoup c'etait ca!!!
lundi 4 décembre 2006 à 18:14:52 | Re : remoting icollection

cyrille37

Merci,
Ce mail est précieux ;-)
J'ai eu le même problème.



mercredi 17 septembre 2008 à 12:24:30 | Re : remoting icollection

sidommou

Salut,

je voulais vous demander si je pouvais faire la même chose chezle client.

J'veux séréaliser l'objet serveur qui contient un liste d'objet client (communication bidirectionnelle). Le problème vient dansla séréalisationdes objet clients (même message d'erreur : En raison de restrictions de sécurité, le type System.Runtime.Remoting.ObjRef est inaccessible.)

J'aiessayer de faire le même code pour le client

BinaryClientFormatterSinkProvider provider = new BinaryClientFormatterSinkProvider();

IDictionary prop = new Hashtable();
prop["port"] = 1069;

prop["typeFilterLevel"] = System.Runtime.Serialization.Formatters.TypeFilterLevel.Full;



TcpChannel channel = new TcpChannel(prop, null, provider);

mais leproblème persiste

qlq1 pourrait-il m'aider?

merci d'avance
mercredi 17 septembre 2008 à 12:26:33 | Re : remoting icollection

sidommou

prop["typeFilterLevel"] = System.Runtime.Serialization.Formatters.TypeFilterLevel.Full;

ce bout de code c parceque BinaryClientFormatterSinkProvider n'offrepas le typefilterlevel



Cette discussion est classée dans : system, runtime, at, remoting, serialization


Répondre à ce message

Sujets en rapport avec ce message

Remoting : System.Runtime.Remoting.RemotingException: Underlying socket was closed [ par psycomel ] Bonjour, Quelqu'un a t il une idée d'ou peut venir cette erreur?J'utilise visual studio .net framework 1.1Mon application fait la chose suivante : J'a Problème sérialisation XML WebService [ par blat ] Bonjour,Voila mon problème : je tente de créer un webservice qui accède à un autre webservice. Pour ce faire, j'ai crée un proxy du webservice que je Serialization Soap [ par zaka48 ] j'ai un probleme avec la declaration de l'esapce de nom using System.Runtime.Serialization;using System.Runtime.Serialization.Formatters.Soap;c'est ce System.Runtime.Remoting.Channels.Http introuvable [ par joserwan ] Bonjour à tous,Je suis incapable de trouver la classe System.Runtime.Remoting.Channels.Http ! J'ai bien System.Runtime.Remoting.Channels, mais en tapa The "ValidateXaml" task failed unexpectedly. [ par mickael56100 ] Bonjour, j'ai une erreur lorsque je compile mon projet silverlight. Est ce que quelqu'un pourrait m'aider? Error 1 The "ValidateXaml" task failed une struct avec tableau de struc [ par mouloud42 ] salut,j'ai un pb de compilation quand je met ce code, à chaque déclarations le compilo m'envoie boulé quand c'est pas une varialb c'est l'autre, un ca envoyer un e-mail [ par morisaab ] Bonjour:J'ai écrit le programme suivant afin d'envoyer un e-mail:using System;using System.Windows.Forms;using System.Net.Mail;   public class sendmai Security exception [ par hoodlum ] Bonjour a tous j'ai un petit soucis j'ai créer un programme qui permet d'ouvrir un fichier word et de lui lancer des raccourci clavier, cependant il f Taille Maximale d'un controle ???? [ par tservolle ] Bonjour,Savez vous si il existe une limite maximale pour la taille d'un controle dans un Winform ???En fait je suis en train d'écrire un controle qui probleme avec heritage [ par cudenetf ] bonjour,j'ai une form heritée d'une autre.QUand je modifie le form parent , j'ai un probleme avec le designer plus rien ne fonctionne (enfin j'ai ce m


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,811 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales