當前位置: 首頁>>代碼示例>>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;未經允許,請勿轉載。