While Installing SQL 2005 Express Edition we hit the error -- The SQL Server System Configuration Checker cannot be executed due to WMI configuration on the machine Error:2147749896 (0x80041008)

Symptoms:

Application Popup Error:

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

The SQL Server System Configuration Checker cannot be executed due to WMI configuration on the machine <Computer Name> Error:2147749896 (0x80041008).

[Environment]

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

Windows XP home Edition

Service Pack 2

SQL Version: SQL2005 Express Edition

SQL Service Pack: RTM

Troubleshooting this Issue

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

Application popup Error:

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

The SQL Server System Configuration Checker cannot be executed due to WMI configuration on the machine STEVE LAPTOP Error:2147749896 (0x80041008).

SQLSetup0001__<ComputerName>_Core(Local).log

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

*******************************************

Setup Consistency Check Report for Machine: STEVE LAPTOP

*******************************************

Article: WMI Service Requirement, Result: Error

Description: Windows Management Instrumentation (WMI) is not functioning properly. Further checks cannot be performed. Action: Please make sure Windows Management Instrumentation (WMI) is functioning properly.

The SQL Server System Configuration Checker cannot be executed due to WMI configuration on the machine STEVE LAPTOP Error:2147749896 (0x80041008).

The checkResult returned is 2147749896

The checkResult for local machine returned by CheckSCCResult is 70036

Setup is unable to proceed because one of scc articles failed. Please address those errors before continuing the setup.

<EndFunc Name='DwLaunchMsiExec' Return='70036' GetLastError='0'>

-- This a Classic WMI issue.

-- Notice the following Error:2147749896 (0x80041008) in core(local) log .

-- 0x80041008 translates toWBEM_E_INVALID_PARAMETER from https://msdn.microsoft.com/en-us/library/aa394559(VS.85).aspx

Let’s drill down further and determine the source of the above error message.

Setup logs are usually present in -- C:\Program Files\Microsoft SQL Server\90\Setup Bootstrap\LOG\Files

FromSQLSetup0001_<ComputerName>_SCC.log

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

Performing check on local machine STEVE LAPTOP

Connecting to STEVE LAPTOP machine

ConnectServer returned 2147749902 (0x8004100e)

ConnectServer returned 2147749896 (0x80041008)

ConnectServer returned 2147749896 (0x80041008)

-- Here one can notice Error 2147749902 (0x8004100e) before Error 2147749896 (0x80041008).

-- This error was raised while an attempt was made to connect to the computer (Connecting to STEVE LAPTOP machine in this case ) <this is from the above SCC Log.>

You would see the following messages in Core(Local).log

SQLSetup0001__<ComputerName>_Core(Local).log

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

Opening 'MachineConfigScope' for [STEVE LAPTOP]

Trying to find Product Code from command line or passed transform

If possible, determine install id and type

Trying to find Instance Name from command line.

No Instance Name provided on the command line

So What Is Error 2147749902 (0x8004100e) ???

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

From MSDN https://msdn.microsoft.com/en-us/library/aa393720(VS.85).aspx

wbemErrInvalidNamespace 2147749902 0x8004100E --> The specified namespace did not exist on the server.

-- 0x8004100E is indicating that SQL server is unable to find the specified namespace on the server

-- We reviewed the WMI log files and found the following

WBEMPROX.LOG: [<OS DRIVE>:\WINDOWS\system32\wbem\Logs]

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

(Mon Jul 07 13:24:22 2008.9911642) : Using the principal -RPCSS/STEVE LAPTOP-

(Mon Jul 07 13:24:22 2008.9911982) : ConnectViaDCOM, CoCreateInstanceEx resulted in hr = 0x0

(Mon Jul 07 13:24:22 2008.9912082) : NTLMLogin resulted in hr = 0x8004100e

Reasons for the above error to surface :

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

Typically invalid namespace errors can be caused due to several reasons some of them being.

1> namespace name provided is miss spelt.

2> Alternatively, you might be trying to connect to a namespace which might be valid on some computers may not exist on other computers. For example, the root\RSOP namespace can be found on Windows XP and Windows Server 2003, but not on Windows 2000

For more info : https://www.microsoft.com/technet/scriptcenter/topics/help/wmi.mspx

How did we prove we were not able to connect to the computer using WMI ??

-- We did a quick test using WBEMTEST.EXE

> Go to RUN command and type WBEMTEST.exe

> Click on Connect

> Here we need to give the namespace name. We used \\STEVE LAPTOP\root it threw Invalid Namaspace Error.

> But when we tested the same locally on our machine using \\computername\root it connected.

-- Why did a connection to \\Steve Laptop\root result in an invalid namespace.???

-- The ONLY glaring difference we found was that there was a SPACE in the computer name.

-- When tested on one of the local Win XP box ,it did not let us add a SPACE in a computer name.

 NOTE: Netbios name allowed the use of “spaces” only in Microsoft Windows NT 4.0

Solution:

-- We changed the computer name to STEVE-LAPTOP and rebooted the box.

-- Setup finished SUCCESSFULLY.

Regards,

Dhiraj HN.
SE,Microsoft SQL support

Reviewed by

Rakesh Singh & Shamik Ghosh

TL,Microsoft SQL support