The information in this article applies to:
SYMPTOMSRegistration or unregistration of ATL servers may fail on a machine if the logged-on user doesn't have appropriate registry access rights. In-process servers may fail and display the following message: Debug EXE servers, linked statically to the registrar code and run in the debugger, may display the following trace messages:
CAUSE
CRegKey is a class used by ATL for manipulating the registry. It's Open()
and Create() methods have a REGSAM argument that specifies the security
access to the particular registry key.
RESOLUTIONIn ATLBASE.H, change the default REGSAM for CRegKey::Create() and CRegKey::Open() to KEY_READ|KEY_WRITE:
You need to link statically to the registrar. Building for
ReleaseMinDependency will statically link to the registrar. Debug builds
link dynamically to the registrar via Atl.dll. You need to add
_ATL_STATIC_REGISTRY to the list of Preprocessor definitions. You can do
this on the Project menu by clicking Settings. Click the C/C++ tab and
select General under Category.
For additional information, please see the following article(s) in the Microsoft Knowledge Base: Q166717 DOC: Instructions for Statically Linking to Registrar Code. STATUSMicrosoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. We are researching this bug and will post new information here in the Microsoft Knowledge Base as it becomes available. REFERENCESOther articles related to ATL registration: Q166217 PRB: ATL EXE Server Built On Windows 95 Errors While Registering(c) Microsoft Corporation 1998, All Rights Reserved. Contributions by Samson Tanrena, Microsoft Corporation © Microsoft Corporation 1998, All Rights Reserved. Additional query words: kbDSupport user poweruser administration nonadministrator rights
Keywords : kbActiveX kbATL210bug kbCOMt kbRegistry kbVC500bug kbVC600bug kbATL300bug |
Last Reviewed: November 23, 1999 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |