G
Guest
Hi,
I am using COM with RunningObjectTable, take in mind the following points:
1. I have a server that runs as a service this service register an object in
ROT, the object should be accesible to usermode applications
2. I have a user mode application trying to get the interface pointer to the
objsect registered by thye service in ROT
spROT->GetObjectW failes with 0x800401e3 on the user mode application
when running my server as an application ( and not as a service ) the
interface is retrieved successfully.
Enumerating all the ROT objects by the app didn’t show the object registered
by the service.
It seems as if there is a different context per desktop ( such as with named
kernel objects ), is there any special namespace I cane use ( such as
‘Global’ ) that will enable a non service app to resolve objects registered
by a service?
Why does this happen? Why objects registered in ROT by a service are not
accessible to non service applications?
Any help would be appreciated.
I am using COM with RunningObjectTable, take in mind the following points:
1. I have a server that runs as a service this service register an object in
ROT, the object should be accesible to usermode applications
2. I have a user mode application trying to get the interface pointer to the
objsect registered by thye service in ROT
spROT->GetObjectW failes with 0x800401e3 on the user mode application
when running my server as an application ( and not as a service ) the
interface is retrieved successfully.
Enumerating all the ROT objects by the app didn’t show the object registered
by the service.
It seems as if there is a different context per desktop ( such as with named
kernel objects ), is there any special namespace I cane use ( such as
‘Global’ ) that will enable a non service app to resolve objects registered
by a service?
Why does this happen? Why objects registered in ROT by a service are not
accessible to non service applications?
Any help would be appreciated.