How to Resolve COM+ Event System Error 800706BB by Tracing Application GUID in Windows Server 2003 Event Logs


4 views

When dealing with COM+ Event System errors on Windows Server 2003, you'll typically encounter GUIDs formatted like this:

{DF540FFA-D787-4FDF-82E4-4BD5C1302F23}-{00000000-0000-0000-0000-000000000000}-{00000000-0000-0000-0000-000000000000}

The first segment represents the actual application GUID, while the subsequent zeros are placeholder values. Error code 800706BB specifically indicates "The server is not operational," which often points to a misconfigured or missing COM+ component.

Since the CLUSDB method didn't work in your case, here are more reliable approaches:

Method 1: Registry Search with PowerShell

This PowerShell script recursively searches the registry for COM+ applications:

function Find-ComAppByGuid {
    param([string]$targetGuid)
    $comRoot = "HKLM:\SOFTWARE\Microsoft\COM3"
    if (-not (Test-Path $comRoot)) {
        $comRoot = "HKLM:\SOFTWARE\Microsoft\COM"
    }
    
    Get-ChildItem -Path $comRoot -Recurse | ForEach-Object {
        if ($_.Property -contains "CLSID") {
            $appGuid = $_.GetValue("CLSID")
            if ($appGuid -like "*$targetGuid*") {
                [PSCustomObject]@{
                    Path = $_.PSPath
                    Name = $_.GetValue("")
                    CLSID = $appGuid
                }
            }
        }
    }
}

Find-ComAppByGuid "DF540FFA-D787-4FDF-82E4-4BD5C1302F23"

Method 2: Component Services MMC Snap-in

For a GUI approach:

  1. Open Component Services (dcomcnfg.exe)
  2. Navigate to Component Services > Computers > My Computer > COM+ Applications
  3. Right-click each application and check Properties > Advanced tab
  4. Match the Application ID against your GUID

When standard methods fail, try these advanced techniques:

Using COMAdmin Catalog

$catalog = New-Object -ComObject COMAdmin.COMAdminCatalog
$apps = $catalog.GetCollection("Applications")
$apps.Populate()

foreach ($app in $apps) {
    if ($app.Key -eq "{DF540FFA-D787-4FDF-82E4-4BD5C1302F23}") {
        Write-Host "Found application: $($app.Name)"
        Write-Host "Description: $($app.Description)"
        break
    }
}

Event Log Correlation

Search for related events around the same timestamp:

Get-WinEvent -LogName "Application" | 
    Where-Object { $_.TimeCreated -ge (Get-Date).AddHours(-1) } | 
    Sort-Object TimeCreated -Descending

Beyond GUID identification, consider these corrective actions:

  • Verify DCOM permissions (dcomcnfg > Component Services > Computers)
  • Check if the COM+ application is properly installed and registered
  • Review any recent changes to the system's COM+ configuration
  • Ensure the COM+ System Application service is running

To avoid similar issues:

# Example: COM+ application health check script
$comAdmin = New-Object -ComObject COMAdmin.COMAdminCatalog
$apps = $comAdmin.GetCollection("Applications")
$apps.Populate()

$report = foreach ($app in $apps) {
    try {
        $status = $comAdmin.GetApplicationInstanceIDFromProcessID($app.Key)
        [PSCustomObject]@{
            Name = $app.Name
            GUID = $app.Key
            Status = if ($status) { "Running" } else { "Stopped" }
        }
    } catch {
        [PSCustomObject]@{
            Name = $app.Name
            GUID = $app.Key
            Status = "Error: $($_.Exception.Message)"
        }
    }
}

$report | Export-Csv -Path "C:\COMPlus_Health_Report.csv" -NoTypeInformation

When troubleshooting COM+ Event System errors on Windows Server 2003, you might encounter cryptic GUID references like:

{DF540FFA-D787-4FDF-82E4-4BD5C1302F23}-{00000000-0000-0000-0000-000000000000}-{00000000-0000-0000-0000-000000000000}
HRESULT: 800706BB

This typically indicates a failure in marshaling a COM+ subscriber. The GUID represents either a COM+ application or component registration.

Registry Search Methodology

First attempt locating the GUID in these registry paths:

HKEY_CLASSES_ROOT\CLSID
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\COM3

For a comprehensive registry search:

REG QUERY HKCR /f "{DF540FFA-D787-4FDF-82E4-4BD5C1302F23}" /s
REG QUERY HKLM\SOFTWARE /f "{DF540FFA-D787-4FDF-82E4-4BD5C1302F23}" /s

Component Services Inspection

Navigate through Component Services (dcomcnfg.exe):

  1. Open Component Services
  2. Expand Computers → My Computer → COM+ Applications
  3. Check each application's properties for matching GUIDs

Using COM+ Administration Objects

Create a VBScript to enumerate COM+ applications:

Set catalog = CreateObject("COMAdmin.COMAdminCatalog")
Set apps = catalog.GetCollection("Applications")
apps.Populate

For Each app In apps
    WScript.Echo "Name: " & app.Name & " ID: " & app.Key
Next

Event Subscription Analysis

Check the COM+ Event System subscriptions:

Set catalog = CreateObject("ComAdmin.COMAdminCatalog")
Set subscriptions = catalog.GetCollection("Subscriptions")
subscriptions.Populate

For Each sub In subscriptions
    WScript.Echo "Subscription: " & sub.Name & " InterfaceID: " & _
        sub.Value("InterfaceID") & " SubscriberCLSID: " & sub.Value("SubscriberCLSID")
Next

This specific error (RPC_S_CALL_FAILED_DNE) often indicates:

  • The COM+ application is not properly registered
  • DCOM permissions issues
  • Network-related problems for remote components

Check DCOM configurations using:

dcomcnfg.exe → Component Services → Computers → My Computer → DCOM Config

For clustered environments where CLUSDB is missing:

cluster.exe /cluster:<cluster_name> res "COM+ Application" /priv

Or use PowerShell (if available):

Get-ClusterResource | Where-Object {$_.Type -like "*COM*"} | Format-List *