Click here to Skip to main content
15,860,859 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hello Everyone,

I am in front of an issue related to the access of a com server exe via a standalone consumer application client.
Let me explain you in details:

If I create a standalone com exe server via for example vb6 activex exe project mode and client consuming the object via a getobject / createobject. The client application may link to the published object happily when they are boot running in user or admin privilege.

WorkingConfig.png


When I run the server in admin mode then the client get as return code from getobject or createobject: "Class not registered", HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG.

NotWorkingConfig.png


Thank you very much in advance for any inputs you may have.
Best regards.
MiQi.

What I have tried:

Based on research, I have spotted a tool to modify the launching privilege:

Launching privilege

This can be set via the tool:
dcomcfng.exe

I have tried that solution but did not fix the issue, I am still getting class not registered.

What may be the reason ? How to allow permission to access the object ?
How to proceed to allow the consumer via getobject to access the idspatch reference of the public object ?

I have attached the sample files to investigate my query:
vb6exe.zip

OutofProcessCOM.zip
Posted
Updated 17-Jul-16 11:39am
v3

1 solution

If you launch an elevated process it is running inside a sandbox where non-elevated code cannot get at it.

Either both of your processes have to run elevated or they both have to run non-elevated.

Why? Security exploits.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900