当前位置: 首页>>代码示例>>C#>>正文


C# System.MarshalByRefObject类代码示例

本文整理汇总了C#中System.MarshalByRefObject的典型用法代码示例。如果您正苦于以下问题:C# MarshalByRefObject类的具体用法?C# MarshalByRefObject怎么用?C# MarshalByRefObject使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


MarshalByRefObject类属于System命名空间,在下文中一共展示了MarshalByRefObject类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: MockServer

		public MockServer(MarshalByRefObject mock, IChannel channel, string uri)
		{
			this.mock = mock;
			this.channel = channel;
			ChannelServices.RegisterChannel(channel, true);
			mockRef = RemotingServices.Marshal(mock, uri);
		}
开发者ID:bbriggs,项目名称:FieldWorks,代码行数:7,代码来源:MockServer.cs

示例2: GetObjectSink

        public IMessageSink GetObjectSink(MarshalByRefObject obj, IMessageSink nextSink)
        {
            if (obj.GetType().GetCustomAttributes(typeof(ONContextAttribute), true).Length > 0)
                nextSink = new ONContextInterceptor(obj, nextSink, mOnContextClass);

            return nextSink;
        }
开发者ID:sgon1853,项目名称:UPM_MDD_Thesis,代码行数:7,代码来源:ONContextAdder.cs

示例3: AOPSinkProcessor

        /// <summary>
        /// Initializes a new instance of the <see cref="AOPSinkProcessor" /> class.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="nextSink">The next sink.</param>
        /// <param name="messageDelegates">The message delegates.</param>
        public AOPSinkProcessor(MarshalByRefObject sender, IMessageSink nextSink, MessageProcessDelegates messageDelegates)
        {
            this.NextSink = nextSink;
            this.Sender = sender;

            this.messageDelegates = messageDelegates;
        }
开发者ID:rynnwang,项目名称:CommonSolution,代码行数:13,代码来源:AOPSinkProcessor.cs

示例4: RedirectionProxy

 internal RedirectionProxy(MarshalByRefObject proxy, Type serverType)
 {
     _proxy = proxy;
     _realProxy = RemotingServices.GetRealProxy(_proxy);
     _serverType = serverType;
     _objectMode = WellKnownObjectMode.Singleton;
 } // RedirectionProxy
开发者ID:ArildF,项目名称:masters,代码行数:7,代码来源:redirectionproxy.cs

示例5: MockingProxy

		public MockingProxy(MarshalByRefObject wrappedInstance, IInterceptor interceptor, IMockMixin mockMixin)
			: base(wrappedInstance.GetType())
		{
			this.WrappedInstance = wrappedInstance;
			this.interceptor = interceptor;
			this.mockMixin = mockMixin;
		}
开发者ID:somkidodd,项目名称:JustMockLite,代码行数:7,代码来源:MockingProxy.cs

示例6: LocalPerformer

 /// <summary>
 /// Constructs an instance of the LocalPerformer class.
 /// </summary>
 /// <param name="msg">The invocation to be executed.</param>
 /// <param name="resultCollector">The Result Collector.</param>
 /// <param name="mbr">The target.</param>
 public LocalPerformer(IMessage msg, ResultCollector resultCollector, MarshalByRefObject mbr)
 {
     this._msg = msg;
     this._resultCollector = resultCollector;
     this._mbr = mbr;
     this._mbrUri = RemotingServices.GetObjectUri(mbr);
 }
开发者ID:ArsenShnurkov,项目名称:GenuineChannels,代码行数:13,代码来源:LocalPerformer.cs

示例7: StartRunner

 public void StartRunner(string runnerType, MarshalByRefObject remotePublisher)
 {
     // TODO -- if fails, do a Thread.Sleep and try again
     Type type = Type.GetType(runnerType);
     _runner = (TestRunner)Activator.CreateInstance(type);
     _publisher = (IEventPublisher)remotePublisher;
     _runner.FixtureObserver = new FixtureObserver(_publisher);
 }
开发者ID:wbinford,项目名称:storyteller,代码行数:8,代码来源:TestRunnerProxy.cs

示例8: PublishObjectOverTCP

        /// <summary>
        /// Veröffentlicht ein beliebiges von MarshalByRef abgeleitetes Objekt über einen TCP-Kanal für entfernten Zugriff.
        ///
        /// Bei aktivierung der Sicherheit über den Parameter "enableSecurity", wird die Kommunikation 
        /// vom Absender signiert, um die Integrität sicherzustellen und zusätzlich verschlüsselt. 
        /// Über den Parameter "impersonate" kann Impersonierung eingeschaltet werden. Bei eingeschalteter
        /// Impersonierung, wird der Remoteaufruf im Kontext des Client-Benutzers ausgeführt.
        /// </summary>
        /// <remarks>
        /// Der TCP-Kanal wird automatisch konfiguriert und registriert. Die Kanal-Registrierung bleibt 
        /// über diesen Prozeduraufruf hinaus gültig. Wenn sie die selbe TCP-Anschlussnummer mehrmals an
        /// diese Methode übergeben, wird der bestehene Kanal verwendet. Die Sicherheitskonfiguration des 
        /// ersten Aufrufs ist deshalb entscheidend. Wenn sie für spätere Aufrufe andere Werte für die
        /// Parameter "enableSecurity" oder "impersonate" angeben, werden diese nicht berücksichtigt, 
        /// da der bestehende Kanal verwendet wird!
        /// </remarks>
        /// <param name="instance">Zu veröffentlichendes Objekt</param>
        /// <param name="publicName">Öffentlicher Name (Über diesen Namen greifen Clients entfernt auf das Objekt zu!)</param>
        /// <param name="tcpPort">TCP-Anschlussnummer</param>
        /// <param name="enableSecurity">Schalter für Sicherheit</param>
        /// <param name="impersonate">Schalter für Impersonierung</param>
        public static void PublishObjectOverTCP(MarshalByRefObject instance,string publicName,int tcpPort, bool enableSecurity,bool impersonate)
        {
            // Kanal einrichten (Falls dies noch nicht geschehen ist!)
            SetupServerChannel(tcpPort, enableSecurity, impersonate);

            // Objektinstanz über den TCP-Kanal für entfernten Zugriff veröffentlichen
            System.Runtime.Remoting.RemotingServices.Marshal(instance, publicName);
        }
开发者ID:helios57,项目名称:anrl,代码行数:29,代码来源:RemotingHelper.cs

示例9: Exceptionprocess

        public void Exceptionprocess(MarshalByRefObject inst, IMessage msg, Exception exception)
        {
            // Extract Action
            ONAction lAction = inst as ONAction;

            // Pop the OID from Class Stack
            if (mInStack)
                lAction.OnContext.TransactionStack.Pop();
        }
开发者ID:sgon1853,项目名称:UPM_MDD_Thesis,代码行数:9,代码来源:ONReflexiveEventAttribute.cs

示例10: AttachServer

 protected void AttachServer(MarshalByRefObject s)
 {
     object transparentProxy = this.GetTransparentProxy();
     if (transparentProxy != null)
     {
         RemotingServices.ResetInterfaceCache(transparentProxy);
     }
     this.AttachServerHelper(s);
 }
开发者ID:pritesh-mandowara-sp,项目名称:DecompliedDotNetLibraries,代码行数:9,代码来源:RealProxy.cs

示例11: Unregister

		public void Unregister(MarshalByRefObject obj) {
			ILease lease = (ILease)RemotingServices.GetLifetimeService(obj);
			Debug.Assert(lease.CurrentState == LeaseState.Active);
			lease.Unregister(this);
			lock(this._lock) {
				this._leaseList.Remove(lease);
				Logger.Debug(this, "Stopped sponsoring lease #" + lease.GetHashCode() + " for proxy to " + obj.GetType().Name + ", id = #" + obj.GetHashCode() + ", url = " + RemotingServices.GetObjectUri(obj));
			}
		}
开发者ID:StevenArnauts,项目名称:appserver,代码行数:9,代码来源:SponsorshipManager.cs

示例12: AttachServerHelper

 internal void AttachServerHelper(MarshalByRefObject s)
 {
     if ((s == null) || (this._serverObject != null))
     {
         throw new ArgumentException(Environment.GetResourceString("ArgumentNull_Generic"), "s");
     }
     this._serverObject = s;
     this.SetupIdentity();
 }
开发者ID:pritesh-mandowara-sp,项目名称:DecompliedDotNetLibraries,代码行数:9,代码来源:RealProxy.cs

示例13: MarshallableProxy

        public MarshallableProxy(Type type1, MarshalByRefObject targetObject, InvocationDelegate invoker)
            : base(type1)
        {
            ProxyTargetTyped = targetObject;
            InvocationHandler = invoker;

            ObjRef myObjRef = RemotingServices.Marshal(ProxyTargetTyped);
            URI = myObjRef.URI;
        }
开发者ID:juanplopes,项目名称:simple-commons,代码行数:9,代码来源:MarshallableProxy.cs

示例14: Exceptionprocess

        public void Exceptionprocess(MarshalByRefObject inst, IMessage msg, Exception exception)
        {
            // Extract Server
            ONServer lServer = inst as ONServer;

            // Pop the OID from Class Stack
            if (mInStack)
                lServer.OnContext.OperationStack.Pop();
        }
开发者ID:sgon1853,项目名称:UPM_MDD_Thesis,代码行数:9,代码来源:ONOperationAttribute.cs

示例15: Register

		public bool Register (MarshalByRefObject obj)
		{
			if (registered_objects.ContainsKey (obj)) return false;
			ILease lease = obj.GetLifetimeService () as ILease;
			if (lease == null) return false;
			lease.Register (this);
			registered_objects.Add (obj,obj);
			return true;
		}
开发者ID:jack-pappas,项目名称:mono,代码行数:9,代码来源:ClientSponsor.cs


注:本文中的System.MarshalByRefObject类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。