views:

514

answers:

0

Hi, I'm starting to use COM+ development due to a necessity on a project, and I started to create a proof of concept based on this just understand how it works.

I could create a simple Component Service with C# by extending System.EnterpriseService.ServicedComponent, and setted its assembly attributes and it worked on a local machine. Ok, first part accomplished.

Now I wanted to access this COM+ component via remote call from an external machine. But, I'm not exactly using to physical machines, I'm using a VM which hosts the server Component Service, and the mainly machine (which hosts the VM) is trying to access the COM+ Service.

I've already exported the Component Service as a proxy install and configured it on the 'client' machine.

I then created a project which references to System.EnterpriseServices and to the DLL configured by the Setup Proxy.

After some searches, I see that its used the Type.GetTypeFromProgID("MyNamespace.MyClass", "ip_address"). But I got an UnauthorizedException which says that failed to retrieve the COM class factory with code 80070005.

I read in some sites and forums that the problem is permission. I tried to give access to everything related to the component but not worked.

I tried to look for some books but all lacks the references to remote calling this component services created, all them keep on simple local application.

Am I missing something? or doing something wrong?