Solved

ATL Service : Error  0x80004015

Posted on 2001-07-29
9
1,554 Views
Last Modified: 2013-11-20
Hi,

I need help regarding the error 0x80004015

I built an ATL service with a component.
The interface exposed has a test method.

I registered the proxy stub dll.
When I debug my ATL service, in the Run() method ,

The first call to CoInitialize() and the next call to CoInitializeSEcurity(...) succeed. After that,

I get the  hr value=  0x80004015 when I call the RegisterClassObjects.
   hr = _Module.RegisterClassObjects(CLSCTX_LOCAL_SERVER | CLSCTX_REMOTE_SERVER, REGCLS_MULTIPLEUSE);
    _ASSERTE(SUCCEEDED(hr));

I tried on windows NT 4.0 and also windows 2000. The same error is encountered.

What can be the reason. How do I avoid this.
I need help
0
Comment
Question by:devitalla
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
9 Comments
 

Author Comment

by:devitalla
ID: 6331121
I am not setting anything on DCOMCNFG. All default settings remain
0
 
LVL 12

Expert Comment

by:migel
ID: 6331292
Hi!
this message tells you about wrong securitu settings:
//
// MessageId: CO_E_WRONG_SERVER_IDENTITY
//
// MessageText:
//
//  The class is configured to run as a security id different from the caller
//
#define CO_E_WRONG_SERVER_IDENTITY       _HRESULT_TYPEDEF_(0x80004015L)
check your settings for atl.dll
0
 

Author Comment

by:devitalla
ID: 6331647
Where do I check my settings..
My service settings in Registry is Local Service and
ServiceParameters= - Service.

How do I avoid this. What security settings I have to change?

0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 9

Accepted Solution

by:
ShaunWilde earned 50 total points
ID: 6333268
what does your CoInitializeSecurity call look like ?
0
 

Author Comment

by:devitalla
ID: 6339344
Coinitialize Security call ->  


hr = CoInitializeSecurity(NULL, -1, NULL, NULL,
        RPC_C_AUTHN_LEVEL_NONE, RPC_C_IMP_LEVEL_IMPERSONATE, NULL, EOAC_NONE, NULL);


0
 
LVL 9

Expert Comment

by:ShaunWilde
ID: 6339973
and what do you use on the client ?

if you set them both to the same - it helps -

by the way according to the docs if you use CoInitializeSecurity then registry entries are ignored
0
 

Author Comment

by:devitalla
ID: 6354669
I use the same settings on the Client too.
Still I get the same error.

If the Client and Server are running on the same system,
to avoid the error, I need to edit the Registry entries
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\{1CE40564-40F3-4CC1-9D79-E8F5F0243FBC}
and remove the "LocalService" = <servicename> string value.

Is this a correct way to solve the problem.

Is there any other way to avoid this problem?
0
 
LVL 9

Expert Comment

by:ShaunWilde
ID: 6354913
> Is this a correct way to solve the problem

yes it is (according to what I have just red) - well spotted - see KB article Q158508 (Q6)

to stop the LocalService from re-appearing you can edit the .rgs file and rename it to _LocalService - that way it is easy to put back if necessary

0
 
LVL 23

Expert Comment

by:Roshan Davis
ID: 9490577
No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:

Answered by : ShaunWilde

Please leave any comments here within the next seven days.

PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER!

Roshan Davis
EE Cleanup Volunteer
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
function returning CString in a regular win32 DLL 8 200
Generic progress indicator 6 118
sum13 challenge 24 134
Fibonacci challenge 11 136
Introduction: Dynamic window placements and drawing on a form, simple usage of windows registry as a storage place for information. Continuing from the first article about sudoku.  There we have designed the application and put a lot of user int…
If you use Adobe Reader X it is possible you can't open OLE PDF documents in the standard. The reason is the 'save box mode' in adobe reader X. Many people think the protected Mode of adobe reader x is only to stop the write access. But this fe…
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.
Exchange organizations may use the Journaling Agent of the Transport Service to archive messages going through Exchange. However, if the Transport Service is integrated with some email content management application (such as an antispam), the admini…

756 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question