.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Win Surprise Gifts!!!

Top 5 Contributors of the Month
Gaurav Pal
Post New Web Links

.NET remoting: Transparent?

Posted By:      Posted Date: May 22, 2011    Points: 0   Category :WPF


I thought remoting was supposed to be transparent, and perhaps it can be. But when I invoke a void server method that modifies the object it receives as a parameter, the changes to the object are not reflected at the call site (client-side).

What am I doing wrong, or how can I fix this?

I realize that the client-side object has been serialized at the client and deserialized at the server, so it is in fact a different instance being modified on the server. But I thought remoting was supposed to be transparent, so my result anyway surprises me.

// Pseudo-code!

// Entities.dll
public class Thing
  public string Test { get; set; }

// Server.dll
public class Services : MarshalByRefObject, IServices
  public void Foo(Thing t)
     t.Test = "Bar";

// Client.dll

View Complete Post

More Related Resource Links

Upload transparent PNG image


Hi everybody

I'm creating a website where it must  be able to upload, crop and resize images. This works until I use transparent PNG images. When I upload a transparent PNG, the transparency becomes black. I've searched the whole internet, but found no solution so far. Can someone help me? This is my code. I'm working with MVC 2.

			try {
				HttpPostedFileBase file = Request.Files["image"];
				file.SaveAs(Server.MapPath("/Uploads/" + file.FileName));

				ViewData["ImageLocation"] = "/Uploads/" + file.FileName;
				return View();
			catch (Exception exc) {
				return RedirectToAction("UploadImage");

Around the Horn: Engineer a Distributed System Using .NET Remoting for Process Intensive Analysis


Before the Microsoft .NET Framework, creating a distributed cluster of computers to perform scientific analysis was expensive in terms of hardware, programming and debugging time, and maintenance. You had to purchase expensive servers, spend time debugging network communication, design a distributed system completely different from a system deployed locally, and maintain a melting pot of error handling, data acquisition, networking, and analysis code. In this article, the author shows you how he was able to engineer a distributed computing system in C# to perform analysis of real-world data continuously acquired at high sampling rates, thanks to the .NET Framework.

Nate D'Anna

MSDN Magazine May 2005

Remoting: Managing the Lifetime of Remote .NET Objects with Leasing and Sponsorship


Leasing and sponsorship is the solution for managing the lifecycle of a remote object in .NET. Each object has a lease that prevents the local garbage collector from destroying it, and most distributed applications rely upon leasing. There are several ways in which objects and clients can extend the lease, including dedicated sponsor objects. In this article, the author explains leasing, shows how to configure it, and how it relates to the various remoting activation models. He then discusses design guidelines and options, along with their impact on throughput and performance. Additionally, he introduces a helper class used to automate the management of lease sponsors.

Juval Lowy

MSDN Magazine December 2003

Secure It: WS-Security and Remoting Channel Sinks Give Message-Level Security to Your SOAP Packets


As more organizations adopt XML-based Web Services, the need for message-level security has become evident. WS-Security, now supported in the Microsoft .NET Framework, addresses this need. Using the WS-Security framework, developers can implement channel sinks to intercept Remoting messages as they pass through the .NET Remoting infrastructure. The sink can read the message, change it, and pass it along. During this process, the message can be signed for added security. This article explains how to implement a Remoting channel sink that will modify the Remoting message by including a UserName token in the header, then sign the body using the token.

Neeraj Srivastava

MSDN Magazine November 2003

.NET Remoting: Create a Custom Marshaling Implementation Using .NET Remoting and COM Interop


The .NET Framework offers several methods for customizing the presentation of native .NET and COM object types. One such technique, custom marshaling, refers to the notion of specializing object type presentations. There are times, like when a legacy COM component needs to implement a new interface or when you need to make calls across process or machine boundaries, when custom marshaling saves the day. Elements of COM Interop permit the customizing of COM types while .NET Remoting offers the developer the ability to tailor native .NET types. This article examines these techniques.

Jim Sievert

MSDN Magazine September 2003

.NET Remoting: Secure Your .NET Remoting Traffic by Writing an Asymmetric Encryption Channel Sink


As .NET Remoting gains popularity in the enterprise space, it must meet business demands for trustworthy computing. Remoting traffic can be secured when objects are hosted in IIS, but when they aren't hosted in IIS, custom security solutions can be developed to secure them. This article provides an in-depth look at writing channel sinks for .NET. It also details the flow of data through custom channel sinks and explains the kinds of manipulations that can be performed on that data.

Stephen Toub

MSDN Magazine June 2003

.NET Remoting: Design and Develop Seamless Distributed Applications for the Common Language Runtime


Prior to the advent of .NET, DCOM was the underlying technology for remote communications between Windows-based applications. But DCOM is quirky to set up and configure and not as interoperable as it should be. In .NET, XML Web Services and .NET Remoting are a seamless and effective answer to the demand for tools to build distributed applications.This article provides a primer on .NET Remoting with insights into the internal plumbing. Important aspects of remoting, such as channels, object lifetime management, and clients for remote objects are discussed. In addition, some practical examples are provided.

Dino Esposito

MSDN Magazine October 2002

Converting PNG to Transparent PNG


Hi there,

I have a bunch of PNG images and i want the background for each one to be transparent. At the moment they all have white background and i want to remove that. Can this be done programatically possibly with the help of some imaging component.

Thanks in advance.


Displaying transparent text using TextOut

Hi, I'm currently working on a C# project that displays transparent windows (like splashscreens) using Windows Forms. I've been using a class that allows me to call GDI Win32 functions such as UpdateLayeredWindow(), GetDC(), TextOut()... I can show a transparent PNG, it's ok but when I want to add a transparent text with TextOut it works but doesn't follow the form. In the TextOut function, I've tried to specify the HDC of the current form using e.Graphics.GetHdc() without success... Is there a way I can draw my transparent text so it follows the transparent form ? Here is my code, written within the Form_Paint method (private void Form1_Paint(object sender, PaintEventArgs e)). The HDC for the TextOut method used here is null so it draw within the screen DC. IntPtr Hdc = API.GetDC(IntPtr.Zero); IntPtr memDc = API.CreateCompatibleDC(Hdc); IntPtr hBitmap = IntPtr.Zero; IntPtr oldBitmap = IntPtr.Zero; try { //Display-image Bitmap bmp = new Bitmap(backgroundImage); hBitmap = bmp.GetHbitmap(Color.FromArgb(0)); //Set the fact that background is transparent oldBitmap = API.SelectObject(memDc, hBitmap); //Display-rectangle Size size = bmp.Size; Point pointSource = new Point(0, 0); Point topPos = new Point(this.Left, this.Top); e.Graphics.GetHdc() //Set up blending options API.BLENDFUNCTION blend = new API.BLENDFUNCTION(); blend.BlendOp = API.AC_SRC_O

Remoting from WebService throws: An existing connection was forcibly closed by the remote host

Hello everyone, I have a problem with using .NET remoting from webservice. When using remoting from console application, there is no problem. I suppose problem is somewhere in IIS. My system is Windows Vista. Thank you for any help. Best regards, Jozef

Which is more secure? ClientActivated / ServerActivated Remoting ?

Hi, I want to develop a client server model where multiple clients will be passing some data to a single server. I am using .Net remoting to acheive this. I was wondering which RemotingConfiguration should I go for (ClientActivated / ServerActivated)? Please help me analyse this. Thanks, Piyush Kumat

How to Pass higher Length of Byte Array to the remoting method

Dear all,I am using a windows application and the businness logic is present in the remote server.Once particular method takes bytearray as input parameter...Whenever the method call is made the function returns value .This is limited for the particular bytearray length. (4109228 bytes).If the length of bytearray crosses 4109228 bytes.I am getting an error that "input stream is not valid binary format".How to Pass higher Length of Byte Array to the remoting method... Greater than 4 MB?I believe something is missing in web.config or app.config...?What could be the issue...? Any sugesstions are welcome....ThanksRavikumar

Transparent child forms

Hi, I'm developing a Windows Forms application that uses an MDI and child forms. The MDI has an image for the background. I am trying to make the child form background be transparent so the MDI image shows through. I have trawled the internet, and from my understanding this is not possible. However, it seems to be possible in unmanaged code using API’s. Are there any examples of how to do this and what API I should use?   Many thanks in advance.   Andy (MCTS)

How can i make a WPF transparent group box control that is in the toolbox?

How can i make a WPF transparent Groupbox control that will show a picturebox image behind it? Thanks -civilwarrock

Transparent image

Is there any way in which image background can be made transparent? Thanks,Krunal C

Remoting architecture

I have written a small application (client) that executes a single log parsing on a machine. I want to build a service application that controls the results given by the client app. I have read that Marshall-By-Reference objects could solve the problem creating a proxy that make possible the communication with remote object. The disadvantage is that I have to distribute the client application, being the client in about 100 machines (W2K3) I can't figure out how can this be done easily. The second option I read is using WCF, more modern, probably more robust... sending "object" instead of creating a communication object seems more clean to me, but is it not oriented to Web services basically? It increases complexity? Which one do you recommend? The easiest to implement? The small app was designed to work isolated and return a result object, but WCF seems the way to go.

the type initializer for 'system.runtime.remoting.identity' threw an exception.

HI, I am trying to implement kerberos delegation in Active Directory enviroment with windows 2003 servers SP2. I have Client, ProxyServer and RemoteServer application that are developed on .Net framework v3.5 using .Net Remoting "System.Runtime.Remoting". I am not using Microsoft.Samples.Security.SSPI &  Microsoft.Samples.Runtime.Remoting.Security directly. my code is based on "http://blogs.msdn.com/dotnetremoting/archive/2006/07/06/662599.aspx" Only change that I have done is put impersonate="true" in channel configuration of ProxyServer and RemoteServer, and of course changed the UPN and Port and IP address. The Client's credentials are successfully impersonated by ProxyServer, I can access the text file on ProxyServer on behalf of client. But when from ProxyServer I try to execute the method on RemoteServer it throws "the type initializer for 'system.runtime.remoting.identity' threw an exception." After looking at blog http://www.secnewsgroups.net/group/microsoft.public.dotnet.security/topic8251.aspx I did required changing under Local Security Settings -> Local Policies -> User Rights Assignments -> impersonate a client after authentication and Create Global Objects. I have added three domain user names in three machine under whose credentials corrosponding application is running. When i run three applications on their
ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend