How to troubleshoot the “Red Arrow” issue in Component Services (II)

来源:互联网 发布:mac 安装xcode 步骤 编辑:程序博客网 时间:2024/06/03 17:49

We have introduced the troubleshooting methods on the most common scenarios which caused "Red Arrow" issue happens in Component Service before.

Here I'd like to elaborate  more steps which may help on this "Red Arrow" problem. They arerebuilding COM+ Catalogs. Although the steps in this article are NOT  for most common patterns and are NOT  the first thing to try, it will still be helpful if you have tried all other steps and are going to rebuild the system, especially the error reported that reading COM+ catalog failed or COM+ catalog corrupted.

Before rebuilding COM+ Catalog, please read through " the most common scenarios" to see if general troubleshooting methods can work, they  were mainly written  for Win 2003, but can also be applied in new Systems (Win2008/Win7)  for troubleshooting purpose.

Below are steps to rebuild COM+ catalogs:

For Windows 2003:

==================

1. Follow the steps in KB315296 to rebuild COM+ catalog:

315296 How to clean up a damaged COM+ catalog

http://support.microsoft.com/default.aspx?scid=kb;EN-US;315296

2. Please run regsvr32 to register the following dll again:

ole32.dll, oleaut32.dll, catsrv.dll, catsrvut.dll, comsvcs.dll

for example, if you want to register ole32.dll, please run "regsvr32 ole32.dll" under command prompt.

IMPORTANT: At step 1, if you failed to reinstall COM+ component with this type error:

" The COM+ Event System detected a bad return code during its internal processing. 
HRESULT was 80029C4A", please verify the Group Policy:
 

a. Run gpedit.msc. 

b. Go to Local Computer Policies -- > Computer Configuration -- > Windows 
Settings -- > Security Settings -- > Local Policies -- > Security Options. 

c. Check whether "DCOM: Machine Launch Restrictions in Security Descriptor 
Definition Language (SDDL) syntax" and "DCOM: Machine Access Restrictions in 
Security Descriptor Definition Language (SDDL) syntax" are defined.

d. If yes, remove them to restore the default settings, and then run "gpupdate /force" to refresh group policy.

e. If there is no Group Policy defined for DCOM access, values in HKLM\Software\Policies\Microsoft\WindowsNT\DCOM should be empty.

 
For Windows 7/2008
==================

1. Copy the catalog first installed on the system to a 'simple' path, either from installation media or the server ( dir /s %windir%\Registration\*.clb, look for R000000000001.clb ). ex.

copy c:\windows\Registration\R000000000001.clb C:\R000000000001.clb

If we could not find the R000000000001.clb under %windir%\Registration\, tried search through the %windir% for R000000000001.clb or *.clb. Copy the R000000000001.clb to 'c:\'.

2. Copy c:\windows\registration to c:\backup as a quick backup.

3. Save the following as a .vbs (ex. Restore.vbs) and run with cscript (ex. cscript c:\restore.vbs):

 ---------------

Dim objComCatalog

 Set objComCatalog = CreateObject("COMAdmin.COMAdminCatalog")

objComCatalog.RestoreREGDB "C:\R000000000001.clb"

 MsgBox "Backup Restored!"

Set objComCatalog = Nothing

--------------

4. Restart the "COM+ System Application" Service.

IMPORTANT: These steps are not supported by the COM+ Product Group on Win7/2008 so far. When we start the steps, need to ensure other necessary troubleshooting steps have been done properly, or  it is OKay for you to reinstall other COM+ applications which were on this machine before.

As a summary, COM+ catalog corruption will lead us to reinstall the COM+ component and other troubleshooting methods will not help. This Reinstallation step on Win2003/2008/7 is somehow complicated and risky for production environment.  An important suggestion is to find a test environment to do full test and  involve COM+ support team in time if you are not certain on any steps.

Regards,

Freist Li

0 0
原创粉丝点击