Archive

Archive for January, 2011

Script of the day – writing to a cell in Excel

January 31st, 2011 No comments

Ever needed to inject info to a cell in an Excel spreadsheet – repeatedly . . . you can do so from Powershell . . like so:

Function write-excel ($ExcelFile, $WorkSheet, $Column, $Row, $Value)
{
<#
	.SYNOPSIS
	 Write value(s) to Excel cells
	.DESCRIPTION
	 No return - Updates an Excel Cell
	.PARAMETER
		e.g. Specify the requested parameter, if not specified this will be prompted
	.EXAMPLE
		PS C:\> write-excel $ExcelFile $WorkSheet $Column $Row $Value
#>
	$File = (ls $ExcelFile).FullName
	# Open Excel
	$Excel = New-Object -Com Excel.Application

	# Prevent Overwrite and Macro Prompt
	$Excel.displayalerts=$False

	# Open Template File

	$WorkBook = $Excel.Workbooks.Open($File)
	$WorkSheet = $WorkBook.Worksheets.Item("$WorkSheet")
	$Worksheet.Cells.Item($Row,$Column) = $Value

	# Setting All Variables to Null

	$WorkBook.SaveAs($ExcelFile,1)
	$Excel.Quit()
 	$WorkBook = $Null
	$WorkSheet = $Null
	$Excel = $Null

	# Releasing Object Wrapper

	[GC]::Collect()
}

Script of the day – ping a range of IP addresses

January 28th, 2011 No comments

Friday today, so just a quick and easy script . . nothing clever

In PowerShell, ping functionality can be handled by using the ‘test-connection’ cmdlet, or simply using .Net

A ping using test-connection is just:

$object = New-Object system.Net.NetworkInformation.Ping
$object.Send('127.0.0.1')

You can wrap it as function to get even more out of this:

function ping-ip {
param( $ip )
trap {$false; continue}
$timeout = 1000
$object = New-Object system.Net.NetworkInformation.Ping
(($object.Send($ip, $timeout)).Status -eq 'Success')
}
ping-ip 127.0.0.1
ping-ip "news.bbc.com"

You can use this function to ping IP addresses or hostnames and will get either TRUE or FALSE as a return . . so you can use this in an if statement or similar

e.g.

If (Ping-IP "labserver001.local"){write-host "Lab domain appears to be online"}

You can add a loop to create your own network segment scan:

0..255 | % { $ip = "192.168.2.$_"; "$ip = $(ping-ip $ip)" }

Importing a VM from VM Workstation to ESX / ESXi

January 28th, 2011 No comments

Importing and exporting virtual machine from a VMWare ESX Server host requires converting that virtual machine’s .vmdk file(s) from one format to another.
Although the underlying technologies work the same, the formatting of the VMDKs differ.

You have 2 options:
1) If you have a running copy of workstation, simply use VMware Converter as you would for any normal conversion, treating the VM as you normally would a physical host in a P2V
2) If you have no working Workstation, you can clone / convert the vmdk at the command line – as I have a fully ESXi lab to play in, I don’t have Workstation running on any machines in my office – as such, when IBM recently supplied a VM for a demo . . that had been created on VM workstation, I had to import it. I used the following process.

Firstly, get hold of an SSH tool ( I use putty)

Next, open a connection to any host that has the storage containing the vmdk presented

In ESX / ESXi, this will be in /vmfs/volumes/<datastorename>

Note: the destination path /dest/folder/vmserver1.vmdk should not contain any existing files with the name ‘vmserver1.vmdk’. If it does the file will be overwritten.

Importing Virtual Disks from GSX Server and Workstation to ESX Server

Before an ESX Server can run a virtual machine created on a different version of VMWare, the virtual disks must first be converted to a format that can be read by the VMFS file system. This is done by running the following vmkfstools command:

vmkfstools -i <folder>/<filename>.vmdk <vmhba number>:<filename>.dsk

<folder> is the name of the folder from which you are importing from

<filename> is the name of the virtual machine file(s) to be imported

<vmhba number> is the name of the VMFS partition you are importing to

An example of a complete command would be:

vmkfstools -i /vmfs/volumes/CLRLAB001T1/vmserver1.vmdk /vmfs/volumes/CLRLAB001T1/vmserver1_new.vmdk

Additional information regarding the vmkfstools command can be found in the ESX Server documentation.

Categories: Toolbox, VMWare Tags: , ,

Powershell – Script of the Day – Menu-Plus

January 27th, 2011 No comments

Yesterday, we created a simple Powershell menu

http://www.get-virtual.info/2011/01/26/script-of-the-day-powershell-menu-select-list/

Today’s script is a feeder for the menu, that allows you use any filed of an object as your menu source and return a different field of it as your return value.

For Example:
the following query will give you a list of the filenames in the current directory, once you select an item, it will return that ‘LastWriteTime’ of that file. – Simple

PS:8 &amp;gt;menu-plus -object (gci) -displayfield &quot;name&quot; -menuTitle Please select a file -returnfield &quot;LastWriteTime&quot;
Function menu-plus ($object, $displayfield, $menuTitle, $returnfield)

{
&amp;lt;#
.SYNOPSIS
Feeder object to Menu Function to Enable return of different field in Object

.DESCRIPTION
Requires:Menu Function
Creates a menu that allows return of a different object field.

.PARAMETER
$object - the array that we're sselecting from
$Displayfield : Name of the field that will be displayed for selection
$MenuTitle : The prompt to included at top of menu
$Returnfield : Field to be returned - defauilts to all fields

.EXAMPLE

PS: &amp;gt;$a = gci
PS: &amp;gt;$b=menu-plus -object $a -displayfield &quot;name&quot; -menuTitle Please select a file -returnfield &quot;LastWriteTime&quot;
¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
¦ Please select a file ¦
¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
CDB

Compare
Decom
edit-table
temp.csv
PS:87 &amp;gt;$b.LastWriteTime
25 March 2010 15:20:53
#&amp;gt;
$menulist = @()
ForEach ($item in $object){$menulist += $item.$displayfield}
$returnval = menu $menulist $menuTitle $returnfield
$output = $object | where {$_.$displayfield -eq $returnval} | Select $returnfield
return $output
}

Connection issues to ESX host (ESX host not responding)

January 26th, 2011 No comments

First thing you should always do when you can’t connect to – or if there is an issue with your connection between vCenter and ESXi \ ESX is to:

1) check DNS configuration on the ESXi server and your DNS server that ESX points to making sure you have the appropriate entries
2) Check host files etc in /etc/hosts, /etc/resolve.conf, /etc/sysconfig/network and /etc/vmware/esx.conf files
2) try to disconnect and reconnect your ESXi host from your vCenter inventory, this uninstalls and reinstalls the vCenter agent using FQDN and then with IP address if FQDN didn’t work
3) Try Restarting both the vCenter management agent on the ESX host and the ESX host management agent. Learn how to do this here: http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1003490
4) If the above didn’t do anything for you, it could be lost connectivity to a LUN, which can cause problems with ESX (less now than earlier versions ESX 2.x), connect to ESXi host directly with VI Client and perform a rescan of your storage adaptors and LUNs.

Categories: VMWare Tags: , ,

Script of the Day – Powershell Menu Select list

January 26th, 2011 No comments

Sometimes you’d like to prompt a user to select an option from a list in Powershell . .

try this:


Function menu
{
&lt;#
	.SYNOPSIS
	 Generate a small &quot;DOS-like&quot; menu.
	.DESCRIPTION
	  Allows you to pick  a menuitem using up and down arrows, select by pressing ENTER
  	.PARAMETER
		e.g. Specify the requested parameter, if not specified this will be prompted
	.EXAMPLE
		C:\&gt; $Options = &quot;Option1&quot;, &quot;Option2&quot;, &quot;Option3&quot;, &quot;Option4&quot;, &quot;Option5&quot;
		C:\&gt; $selection = Menu $Options &quot;Please select an Option?&quot;

		****************************
		* Please select an Option? *
		****************************

		Option1
		Option2
		Option3
		Option4
		Option5

		write-host $selection
		Option1

#&gt;
    param ([array]$menuItems, $menuTitle = &quot;MENU&quot;, [switch]$quit)
    $vkeycode = 0
    $pos = 0
	If ($quit){$menuItems += &quot;Quit&quot;}
    DrawMenu $menuItems $pos $menuTitle
    While ($vkeycode -ne 13) {
        $press = $host.ui.rawui.readkey(&quot;NoEcho,IncludeKeyDown&quot;)
        $vkeycode = $press.virtualkeycode
        Write-host &quot;$($press.character)&quot; -NoNewLine
        If ($vkeycode -eq 38) {$pos--}
        If ($vkeycode -eq 40) {$pos++}
        if ($pos -lt 0) {$pos = 0}
        if ($pos -ge $menuItems.length) {$pos = $menuItems.length -1}
        DrawMenu $menuItems $pos $menuTitl
    }
	If ($($menuItems[$pos]) -eq 'Quit'){return}
	Else
	{Write-Output $($menuItems[$pos])}
}



function DrawMenu {
    ## supportfunction to the Menu function above
    param ($menuItems, $menuPosition, $menutitle)
    $fcolor = $host.UI.RawUI.ForegroundColor
    $bcolor = $host.UI.RawUI.BackgroundColor
    $l = $menuItems.length + 1
    cls
    $menuwidth = $menutitle.length + 4
    Write-Host &quot;`t&quot; -NoNewLine
    Write-Host (&quot;#&quot; * $menuwidth) -fore $fcolor -back $bcolor
    Write-Host &quot;`t&quot; -NoNewLine
    Write-Host &quot;# $menutitle #&quot; -fore $fcolor -back $bcolor
    Write-Host &quot;`t&quot; -NoNewLine
    Write-Host (&quot;#&quot; * $menuwidth) -fore $fcolor -back $bcolor
    Write-Host &quot;&quot;
    Write-debug &quot;L: $l MenuItems: $menuItems MenuPosition: $menuposition&quot;
    for ($i = 0; $i -le $l;$i++) {
        Write-Host &quot;`t&quot; -NoNewLine
        if ($i -eq $menuPosition) {
            Write-Host &quot;$($menuItems[$i])&quot; -fore $bcolor -back $fcolor
        } else {
            Write-Host &quot;$($menuItems[$i])&quot; -fore $fcolor -back $bcolor
        }
    }
}

Extending a Windows C:\ Dell EXTPart

January 26th, 2011 No comments

I get many requests to extend the C:\ (or any other drive)
Most times these are for VMs – so it is pretty easy right? Extend the amount of disk allocated to the virtual machine, then extend in Computer Management – or using diskpart?

Well this does not always work – see, Windows does not really like you messing with system drive.

Well, Dell have come up with a brilliant tool called EXTPart
http://support.dell.com/support/downloads/download.aspx?c=us&cs=19&l=en&s=dhs&releaseid=R64398&formatcnt=2&fileid=83929

All you need to do now is provision the extra space to the VM, then run the tool at the command line and follow the wizard:

C:\>extpart.exe
ExtPart - Utility to extend basic disks (Build 1.0.4)
(c) Dell Computer Corporation 2003

Volume to extend (drive letter or mount point): c:
Current volume size : 66285 MB (69504860160 bytes)
Current partition size : 76285 MB (79990815744 bytes)
Size to expand the volume (MB): 76285

that’s it – job done . . zero downtime (watch out of course . . this works differently if you have a clustered disk to extend – see:  http://www.get-virtual.info/2011/01/25/replacing-clustered-storage-for-a-sql-cluster-emc-ce-ms-clustering/ )

Categories: Toolbox Tags: , , , ,

'The terminal server has exceeded the maximum number of allowed connections.' when trying to remote connect to the server

January 26th, 2011 No comments

To query and list the sessions on the remote session, you could use QUser.exe or QWinsta, or Powershell.

Powershell is my usual weapon of choice . .

PSTerminalServices is a PowerShell module that helps you manage Terminal Services (including Remote Desktop connections) sessions and processes.

The module is based on an open source project named Cassia (version 2.0.0.60), a .NET library for accessing the native Windows Terminal Services API.

You’ll need to download the module from  http://code.msdn.microsoft.com/PSTerminalServices and then ‘Import’ the module

What you can do with it

The following operations are supported on local and remote computers:

  • Enumerating terminal sessions and reporting session information including connection state, user name, client name, client display details, client-reported IP address, and client build number.
  • Logging off a session.
  • Disconnecting a session.
  • Displaying a message box in a session.
  • Enumerating all processes or processes for a specified session.
  • Killing a process.

Supported Platforms

Cassia has been tested on Windows Server 2008 R2 beta (RTM?), Windows Server 2008, Windows Server 2003, Windows XP, and Windows Server 2000. It should work on Windows Vista as well.

Functions

The following functions are added to the current session when you import the module:        Disconnect-TSSession – Disconnects any attached user from the session.

Get-TSCurrentSession – Provides information about the session in which the current process is running.

Get-TSServers – Enumerates all terminal servers in a given domain.

Get-TSProcess – Gets a list of processes running in a specific session or in all sessions.

Get-TSSession – Lists the sessions on a given terminal server.

Send-TSMessage – Displays a message box in the specified session ID.

Stop-TSProcess – Terminates the process running in a specific session or in all sessions.

Stop-TSSession – Logs the session off, disconnecting any user that might be connected.

Some Code Examples

For more code examples use Get-Help <cmdletName> –Examples.

# Logs off all the active sessions from remote computer 'Labserv07', no confirmations.
PS> Get-TSSession -ComputerName Labserv07 -State Active | Stop-TSSession –Force
# Gets all Active sessions from remote computer 'Labserv07', made from IP addresses that starts with '10'.
PS> Get-TSSession -ComputerName Labserv07 -Filter {$_.ClientIPAddress -like '10*' -AND $_.ConnectionState -eq 'Active'}
# Displays a message box inside all active sessions of computer name 'Labserv07'.
PS>$Message = "Important`n, the server is going down for maintenance in 10 minutes. Please save your work and logoff."
PS> Get-TSSession -State Active -ComputerName Labserv07 | Send-TSMessage -Message $Message
#Gets all processes connected to session ID 0 from remote computer 'Labserv07'.
PS>Get-TSSession -Id 0 -ComputerName Labserv07 | Get-TSProcess

2. QUser

QUser command comes with all the latest Windows clients and servers. This will list the sessions of the remote server (or local machine).

NOTE: if you are using Windows XP, you need to add this location into your System path: C:\Windows\System32\DLLCache. To do this, in command prompt, type the following.

SET PATH = %PATH%;C:\Windows\System32\DLLCache;

QUser help shows,

C:\Anand>QUser /?
Display information about users logged on to the system.

QUERY USER [username | sessionname | sessionid] [/SERVER:servername]

username Identifies the username.
sessionname Identifies the session named sessionname.
sessionid Identifies the session with ID sessionid.
/SERVER:servername The server to be queried (default is current).

E.g.,

C:\>quser /server:LabServer1
USERNAME              SESSIONNAME        ID  STATE   IDLE TIME  LOGON TIME

LabAdmin           rdp-tcp#49          2  Active          .  26/01/2011 1

Logoff the user / session

Logoff command kicks off (logging off) the specified remote session. Log off help shows,

C:\>logoff /?
Terminates a session.

LOGOFF [sessionname | sessionid] [/SERVER:servername] [/V]

sessionname The name of the session.
sessionid The ID of the session.
/SERVER:servername Specifies the Terminal server containing the user
session to log off (default is current).
/V Displays information about the actions performed.

E.g.,

C:\>logoff /server:LabServer1  1 /v
Logging off session ID 1

3. QWinsta

QWinsta is little different and better. It has more features and options. It comes with all flavors of Windows. QWinsta command line help displays as,

C:\>qwinsta /?
Display information about Terminal Sessions.

QUERY SESSION [sessionname | username | sessionid]
[/SERVER:servername] [/MODE] [/FLOW] [/CONNECT] [/COUNTER]

sessionname Identifies the session named sessionname.
username Identifies the session with user username.
sessionid Identifies the session with ID sessionid.
/SERVER:servername The server to be queried (default is current).
/MODE Display current line settings.
/FLOW Display current flow control settings.
/CONNECT Display current connect settings.
/COUNTER Display current Terminal Services counters information.

E.g.,

C:\>qwinsta /server:LabServer1

SESSIONNAME       USERNAME                 ID  STATE   TYPE        DEVICE

console                                     0  Conn    wdcon

rdp-tcp                                 65536  Listen  rdpwd

rdp-tcp#2         admvanwyka                1  Active  rdpwd

RWinsta (Logoff the user sessions)

RWinsta has same parameters and does same thing as log off command. It simply means Reset WINdows STAtion. The help goes as,

C:\>RWinsta /?
Reset the session subsytem hardware and software to known initial values.

RESET SESSION {sessionname | sessionid} [/SERVER:servername] [/V]

sessionname Identifies the session with name sessionname.
sessionid Identifies the session with ID sessionid.
/SERVER:servername The server containing the session (default is current).
/V Display additional information.

E.g.,

C:\>RWinsta /Server:LabServer1 1

Note: RWinsta command does not return anything.

Remember – killing an active session will log off the user – so play nice!

There goes – three different command line methods for logging off sessions . . . (of course if you are the GUI type, you could just use The Terminal Services Session Manager)

Categories: Uncategorized Tags: , ,

Replacing clustered storage for a SQL cluster (EMC CE / MS Clustering)

January 25th, 2011 5 comments

So we had a client running a SQL database . . and they ran out of space.
Normally, you’d just expand disks and we’re good . . but in this instance, the SQL server was clustered – and the cluster was Geo-spanned using EMC Cluster Enabler.

The way disk access is handled is as per following diagram
#################
#               #
#   EMC CE      # (Uses Lun / Device ID to identify disks) failover)
#               #(Allows failover of GeoSpan clusters i.e. remote site
#################
       ||
       \/ (Creates a Cluster Resource to handle GeoSpan replication)
##################
#                #
# MS Cluster     # (Uses Signature ID of disk to identify disk)
#   Service      #(Provides ability to failover between 2 Servers seemlessly)
##################
        ||
        \/
#################
#               #
# DiskMgr       # (Uses Disk ID to identify disk)
#               #
#################

So in order for us to expand the disk, we need to at a DiskMgr level, simply replace the disk with a new one containing the same data . . which also happens to carry the same Disk ID, Signature ID and Device / Lun ID. Of course . . the Lun ID will change when your storage guys present new storage and the signature and disk ID can’t change while the resource is in use.

In Simple Terms, what we need to do (once shutting down your SQL services etc)is:
1) Deconfigure Cluster resource (removes the cluster
2) Stop Clustering
3) Present Disk to OS
4) Disk Offset for SQL (format / drive letter etc)
5) Copy data
4) Swap Signatures for Clustering
6) Swap Drive Letters
7) Enable Clustering
8) Configure EMC CE Group

But for those of you who need a little more info (I blog this so I too have a copy) – here is what we do:

Provision new disk(s) and replicate these at a Storage level (clariion / symmetrix etc)

Shut down SQL services (and any other apps that write to this disk)

* EMC CE
Launch EMC Cluster Enabler (screen grab config for reference)
Select Manage cluster
Under storage, make sure disk that has been presented is available to both ends (rescan if needed)
Select Groups -> <Name of Group containing disk to be replaced. -> right click -> Deconfigure Group ** this removes the resource, stopping the EMC replication for all objects in that group – Your disk is still available in the cluster and at this point your Server could in theory continue to operate . . though without the ability to failover to the other cluster Node

Check that both servers see new disks at compmgmt level
Shut down B-Node
In Device Manager, disable ‘cluster Disk driver’ (You’ll have to first right click and select ‘show hidden devices’) * This Driver is the tool that allows the Clustering service to ‘own’ a disk and manage failover etc of whole disks.
Set cluster service to Manual (Services.msc)
Bounce A-Node
At cmd use Diskpar (this is an EMC tool for managing EMC disks)
Run a DumpCfg and capture the output (again an EMC tool)
diskpar (this will list disks – provide Device IDs etc)
* recheck disk IDs and write down disk ID and signature numbers!
diskpar -S<New Disk’s Number> *follow prompts – select offset of 1920 (SQL server) – We are setting the offset of the disk to 1920 as this is for a SQL server (best practice)
Compmgmgt – Assign disk a new drive letter and format **Allocation size must be 64k!! (SQL)
Robocopy old drive to new drive
View registry to capture disk signatures (hklm\system\currentcontrolset\services\clusdisk\parameters\signatures) – new disk will be in ‘available’, old one in ‘signatures’
Dumpcfg (will display signature mappings)
{Now swap signatures} as follows:
Dumpcfg -s<New random signature to allocate old disks> <Old disk number from DeviceMgr> >> Gives new sig to old disk
Dumpcfg -s<Original disk’s old signature ID> <New Disks Device ID>

Swap drive letters in Compmgmt

Enable Cluster disk Driver in Device Manager

At this point, we have reset all identifiers according to above diagram and we need to bring everything back up (so we reverse the process)

Bounce A-Node
Start clustering (If OK, Set Service to Auto)
Verify that your drive is accesible etc.
Start B-Node

EMC CE
NodeNameLevel, right-click -> ‘configure CE cluster’ -> follow wizard

SCCM error Codes – Troubleshooting SCCM OSD

January 25th, 2011 No comments

I found this list somewhere . . and have had it sitting on a notepad doc for some while – figure I may as well post it somewhere useful?

Error Code Description
CCM_ERRORCODE(0x 80040200) NAMENOTFOUND
2147746304
Name not found
CCM_ERRORCODE(0x 80040201) BADNAMEFORMAT
2147746305
Incorrect name format
CCM_ERRORCODE(0x 80040202) SERVICESHUTDOWN
2147746306
Service is shutting down
CCM_ERRORCODE(0x 80040203) DATAEMPTY
2147746307
No data supplied
CCM_ERRORCODE(0x 80040204) DATATOOLARGE
2147746308
Data too large
CCM_ERRORCODE(0x 80040205) INVALIDPATH
2147746309
Invalid path
CCM_ERRORCODE(0x 80040206) INVALIDFILE
2147746310
Invalid file
CCM_ERRORCODE(0x 80040207) PARSE
2147746311
Parsing error
CCM_ERRORCODE(0x 80040208) INVALIDCOMMAND
2147746312
Invalid command
CCM_ERRORCODE(0x 80040209) DATATYPEMISMATCH
2147746313
Data type mismatch
CCM_ERRORCODE(0x 80040210)
INVALIDTRANSLATOR
2147746320
Invalid Translator
CCM_ERRORCODE(0x 80040211) INVALIDADDRESS
2147746321
Invalid Address
CCM_ERRORCODE(0x 80040212) CONTEXTCLOSED
2147746322
Context is closed
CCM_ERRORCODE(0x 80040213) TIMEOUT
2147746323
Timeout occurred
CCM_ERRORCODE(0x 80040214) INVALIDNAMELEN
2147746324
Invalid name length
CCM_ERRORCODE(0x 80040215) ITEMNOTFOUND
2147746325
Item not found
CCM_ERRORCODE(0x 80040216)
INVALIDSERVICEPARAM
2147746326
Invalid service parameter. The WMI file could be corrupt or there was a manual change to a site control file.
CCM_ERRORCODE(0x 80040217) DATACORRUPT
2147746327
Data is corrupt
CCM_ERRORCODE(0x 80040218) INVALIDSERVICESETTING
2147746328
Invalid service settings
CCM_ERRORCODE(0x 80040219) GLOBALSERVICENOTSET
2147746329
Global service not set
CCM_ERRORCODE(0x 80040220) INVALIDTYPE
2147746336
Invalid type
CCM_ERRORCODE(0x 80040221) INVALIDUSER
2147746337
Invalid user. An operation for a user that is not logged on is in process or the user account is invalid.
CCM_ERRORCODE(0x 80040222)
CANCELLED
2147746338
Operation cancelled
CCM_ERRORCODE(0x 80040223) VERSIONMISMATCH
2147746339
Version mismatch
CCM_ERRORCODE(0x 80040224) INVALIDMESSAGE
2147746340
Invalid message
CCM_ERRORCODE(0x 80040225)
INVALIDADDRESSTYPE
2147746341
Invalid address type
CCM_ERRORCODE(0x 80040226) INVALIDPROTOCOL
2147746342
Invalid protocol
CCM_ERRORCODE(0x 80040227) DISABLED
2147746343
Functionality disabled
CCM_ERRORCODE(0x 80040228) INVALIDENDPOINT
2147746344
Invalid endpoint
CCM_ERRORCODE(0x 80040229) GETCREDENTIALS
2147746345
Failed to get credentials
CCM_ERRORCODE(0x 80040230) LOGONUSER
2147746352
Error logging on as given credentials
CCM_ERRORCODE(0x 80040231) TRANSIENT
2147746353
Transient error that could indicate a network problem.
CCM_ERRORCODE(0x 80040232) MESSAGENOTSIGNED
2147746354
Message not signed
CCM_E_MESSAGENOTTRUSTED(0X 0x80040233)
2147746355
Message not trusted
CCM_ERRORCODE(0x 80040234) INTERNALENDPOINT
2147746356
Internal endpoint cannot receive a remote message
CCM_ERRORCODE(0x 80040235) PARSE_SYNTAX
2147746357
Syntax error occurred while parsing
CCM_ERRORCODE(0x 80040236) LOWMEMORY
2147746358
Low memory.
CCM_ERRORCODE(0x 80040237) REPLYMODE_INCOMPATIBLE
2147746359
Reply mode incompatible
CCM_ERRORCODE(0x 80040238) PUBLIC_KEY_NOT_FOUND
2147746360
Public key not found
CCM_ERRORCODE(0x 80040239) CLIENT_ID_NOT_FOUND
2147746361
Client ID not found
CCM_ERRORCODE(0x 80040240) INSUFFICIENTDISKSPACE
2147746368
Insufficient disk space
CCM_ERRORCODE(0x 80040241) DATABASE_CONNECT_FAILED
2147746369
Failed to connect to database
CCM_ERRORCODE(0x 80040242) STORED_PROCEDURE_FAILED
2147746370
Stored procedure failed
CCM_ERRORCODE(0x 80040243) PUBLIC_KEY_MISMATCH
2147746371
Public key mismatch
CCM_E_BAD_HTTP_STATUS_CODE (0x 8004027E)
2147746430
Client communication from the management point failed.
CCM_E_EMPTY_CERT_STORE (0x 80040280)
2147746432
A valid certificate was not found in the certificate store.
CCM_E_NO_CERT_MATCHING_CRITERIA (0x 80040281)
2147746433
No valid certificate could be found using the specified certificate selection.
CCM_E_TOO_MANY_CERTS (0x 080040282)
2147746434
More than one valid certificate was located
CCM_E_MISSING_PRIVATEKEY (0x 080040283)
2147746435
The selected certificate does not have a corresponding private key, which is required for successful communication.
CCM_E_MISSING_SUBJECT_NAME (0x 080040284)
2147746436
The selected certificate does not have a Subject Name defined.
CCM_E_UNKNOWN_SEARCH_CRITERIA (0x 080040285)
2147746436
The certificate selection criteria syntax is invalid.
CCM_E_INVALID_SMS_AUTHORITY (0x 080040286)
2147746437
The certificate does not successfully chain to a trusted root certification authority.
CCM_E_MISSING_SITE_SIGNING_CERT (0x 080040287)
2147746438
Cannot locate the required Configuration Manager site server signing certificate for this site.
HandleRemoteSyncSend failed (0x80040309).
2147746569
The ‘trust failed’. This happens when the client doesn’t trust data from the management point.
CForwarder_Sync::Send failed (0x80040309).
2147746569
The ‘trust failed’. This happens when the client doesn’t trust data from the management point.
CForwarder_Base::Send failed (0x80040309).
2147746569
The ‘trust failed’ This happens when the client doesn’t trust data from the management point.
CCM_E_LOCATION_MPREFRESH
CCM_ERRORCODE(0x80040300)
2147746560
Client trying to refresh management point and it is empty.
CCM_E_LOCATION_NOAD
CCM_ERRORCODE(0x80040301)
2147746561
Client is configured to only read Active Directory Domain Services and couldn’t find the requested location (site assignment, management point) data.
CCM_E_LOCATION_NOTASSIGNED
CCM_ERRORCODE(0x80040302)
2147746562
Client is trying to do something that requires being assigned to a site and it is not assigned. Only called from NAP when trying to refresh the management point.
CCM_E_LOCATION_INTERNALERROR
CCM_ERRORCODE(0x80040303)
2147746563
Internal error
CCM_E_LOCATION_BADSERVERCERT
CCM_ERRORCODE(0x80040304)
2147746564
Management point certification is corrupt from client’s perspective, which could be due to network corruption or an attacker.
CCM_E_LOCATION_BADCLIENTCERT
CCM_ERRORCODE(0x80040305)
2147746565
Client certification is corrupt from site system’s perspective, which could be due to network corruption or an attacker.
CCM_E_LOCATION_MPUNREACHABLE
CCM_ERRORCODE(0x80040306)
2147746566
Client failed to connect to management point to make a location services request (MPLIST or MPKEYINFORMATION).
CCM_E_LOCATION_PROXYMPREFRESH
CCM_ERRORCODE(0x80040307)
2147746567
Client is trying to refresh proxy management point and it’s empty. May only be called from NAP when trying to refresh the proxy management point.
CCM_E_LOCATION_LOCALMPREFRESH
CCM_ERRORCODE(0x80040308)
2147746568
Client is trying to refresh local management point and it’s empty. Only called from NAP when trying to refresh proxy management point.
CCM_E_LOCATION_MESSAGEFAILED
CCM_ERRORCODE(0x80040309)
2147746569
In most cases this indicates that the in band server authorization failed on a client, usually because the trusted root key does not match the management point certificate.

Desired Configuration Management Custom Error Codes

Error Code Description
0x80040752
E_DCM_DOTNETMISSING
Microsoft .NET Framework 2.0 or later not installed
0x80040756 E_DCM_SDM_REPORTING_FAILED
2147747670
Client failed to report state or status.
0x80040763 E_DCM_CI_INTERNAL_FAILURE
2147747683
WMI corruption or heap corruption
0x80040764
E_DCM_SDM_INTERNAL_FAILURE
WMI corruption, memory corruption, disk corruption
0x80040765
E_DCM_SDM_CLRHOST_LAUNCH_FAILURE
Problem with client installation or.NET Framework 2.0 installation

Inventory Custom Error Codes

Error Code Description
0x80040900 A valid WMI instance inventoried could not be added to the report. The __Path property may be undefined.

Mobile Device Management Custom Error Codes

Error Code Description
-2147220846
FFFFFFFF80040292
Unable to compute message signature for in-band authentication.
-2147220843
FFFFFFFF80040295
Unable to find a valid client authentication certificate for registration.
11520 Mobile device client deployment action failed. Failed to establish ActiveSync or Mobile Device Center connection to the mobile device.
11521 Mobile device client deployment action failed. Invalid client settings file.
11522 Mobile device client deployment action failed. Error determining running directory for DmClientXfer.exe
11523 Mobile device client deployment action failed. Required ActiveSync libraries missing.
11524 Mobile device client deployment action failed. Could not determine processor type of attached mobile device.
11525 Mobile device client deployment action failed. Could not determine base operating system version of attached mobile device.
11526 Mobile device client deployment action failed. Error determining client version for the attached mobile device.
11527 Mobile device client deployment action failed. Error creating client settings .ini file.
11528 Mobile device client deployment action failed. Failed to copy files to the attached mobile device.
11529 Mobile device client deployment action failed. Failed executing the mobile device client installer program on attached mobile device.
11530 Mobile device client deployment action may have failed. Failed reading status information from the mobile device.
11540 Mobile device client deployment action failed. Error determining running directory for the mobile device client installer program.
11541 Mobile device client deployment action failed. Error executing the pre-install command line.
11542 Mobile device client deployment action failed. Error executing the post-install command line.
11550 Mobile device client installation or upgrade failed. Error during removal of the previous client.
11551 Mobile device client installation or upgrade failed. Invalid client settings file.
11552 Mobile device client installation or upgrade failed. Error installing client CAB file.
11553 Mobile device client installation or upgrade failed. Error starting client service.
11554 Mobile device client installation or upgrade failed. Error updating client settings.
11555 Device Client Deployment failed with unknown error.
11560 Mobile device client verification or repair failed. Error during removal of previous client.
11561 Mobile device client verification or repair failed. Invalid client settings file.
11562 Mobile device client verification or repair failed. Error installing client CAB file.
11563 Mobile device client verification or repair failed. Error starting client service.
11564 Mobile device client verification or repair failed. Error updating client settings.
11565 Mobile device client verification or repair failed. Error restoring required files.
11566 Mobile device client privileged certificate installation failed.
11567 Encountered unknown error installing the device client.
11568 Mobile device client setup failed to launch during install.
11570 Mobile device client removal failed. Error using unload.exe to uninstall the existing client.
11571 Mobile device client install/upgrade failed. Error enforcing new client. Mobile device rolled back to old client (if existed before).
11572 Mobile device client rollback failed during unsuccessful upgrade. Error enforcing old client.
11573 Mobile device client failed to perform post cab install actions. Device client installation failed.

Operating System Deployment Custom Error Codes

Error Code Description
0x80040001 Could not get the client GUID
0x80040101 Network access account is not set
0x80040102 No content location returned for the given package
0x80040103 Could not access package content in the DP
0x80040104 Could not find reference program policy
0x80040105 Could not find CCM_ClientAgentConfig raw policy
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,1) An invalid image capture path has been specified.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,2) An invalid image file name extension has been specified.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,3) An invalid image file name extension has been specified.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,4) Image capture path is too long
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,5) An invalid image file name extension has been specified.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,1) Timeout waiting for PNP to finish initialization.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,2) Task sequence failed in Windows PE
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,1) An invalid network adapter index has been specified
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,1) Sysprep is not installed
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,2) Sysprep is invalid
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,3) Invalid System Partition
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,4) Machine is joined to a domain
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,5) Machine is domain controller
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,1) A default management point has not been assigned for this site.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,2) Certificates for the default management point are not available.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,3) Package
Unknown macro: {0}
is not available on the specified distribution points.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,4) Invalid password for media certificate
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,5) The media certificate does not have an associated private key
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,6) The certification authority’s certificate has not been set for this site.

Remote Tools Custom Error Codes

Error Code Description
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,1) Another remote control session is already in progress. Remote Control does not support multiple concurrent remote control sessions.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,2) Level of access allowed is set to “No Access” in the Remote Tools client agent General tab on the site server or in the Remote Control control panel applet.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,3) Remote Control Agent was not properly installed on the client.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,4) No interactive session found on the client.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,5) Remote computer screen is locked.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,6) Failed to create the RDP session.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,8) Remote Tools is disabled.
MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF,9) Failed to launch the Remote Control Agent process.

Software Distribution Custom Error Codes

Error Code Description
E_FAIL_EXECUTION_PENDING 0x80008001 The program cannot be run now from the client UI because :
A restart is in progress.
or
Software Distribution is paused because of a task sequence running
or
Another program is currently running
NOTE: This error code is only returned to the UI and is not present in status messages.
E_FAIL_DUPLICATE_REQUEST 0x80008002 The program cannot be run again from the client UI because it is already pending, an optional (initiated from the UI) run request already exists for it.
NOTE: This error code is only returned to the UI and is not present in status messages.
E_SWDIST_POLICY_NOT_FOUND 0x80002004 The software distribution policy was not found.
E_FAIL_PROGRAM_DISABLED 0x80008004 The program cannot run because it is currently disabled.
E_FAIL_INVALID_POLICY 0x80008005 This error code can be returned on the client if policy cannot be found or the policy is not valid to run or cancel the requested program.
NOTE: This error code is currently not sent in status messages.
E_FAIL_INVALID_PROGRAM 0x80008006 The requested program is not currently pending.
This error code can be returned on the client if the user attempts to continue or cancel the program that is not currently pending. It can also be returned to the task sequence manager (TSM) when TSM requests download locations for packages that are not referenced by the currently running task sequence.
NOTE: This error code is not raised in status messages by Software distribution, but could be raised by task sequence.
E_FAIL_SET_CACHEDCONTENTINUSE 0x80008008 Unable to set the CachedContentInUse flag. Failed to indicate the client cache is currently in use.
E_FAIL_WMI_ERROR 0x80008009 Failed to read data from WMI. The program could not continue because a system restart is in progress or there is already a run request for this program that requires a reboot.
E_FAIL_REQUEST_NOT_FOUND 0x80008011 Used for Task Sequence. Failed to reconnect to Task Sequence job because a request cannot be found with the given job ID.
NOTE: Not sent in status message by Software Distribution, but may be used by task sequence.
E_FAIL_ACTIVE_REQUEST_NOT_FOUND 0x80008012 There is no program currently running.
This error code is returned to task sequence when there is no run request that is currently running, but task sequence tries to get the currently running request.
E_FAIL_DEPENDENCY_NOT_RUN 0x80008013 This program cannot run because it depends on another program that has not run successfully before. This error code is returned to task sequence manager when a task sequence Install Software Action step cannot be run because the step has a child program which has not been run before.
E_FAIL_USER_REQUIRED
0x80008014
This error code is returned to task sequence manager when an “Install Software” step cannot be run because the software distribution program in this step is targeted to a user, requires user input or is set to run in user context
E_FAIL_SWD_NOT_PAUSED
0x80008015
Failed to notify caller that software distribution is paused because the paused state or paused cookie do not match.
E_FAIL_INVALID_HASH
0x80008017
The content hash string or hash versions are empty or incorrect in the software distribution policy or the hash verification failed.
E_FAIL_CANNOT_RUN_ON_INTERNET 0x80008018 The program cannot run at this time because the client is on the internet.
E_FAIL_EXECUTION_NONFATAL 0x80008100 A non fatal error has been encountered while attempting to run the program. The program execution will be retried if the retry count has not been exceeded.
E_FAIL_BAD_ENVIRONMENT_NONFATAL 0x80008103 A non fatal error occurred while preparing to run the program, for example when creating the program execution environment, making a network connection, impersonating the user, determining the file association information, or when attempting to launch the program. This program execution will be retried if the retry count has not been exceeded.
E_FAIL_PROGRAM_NOT_MONITORED 0x80008105 An error was encountered while getting the process information for the launched program and the program execution will not be monitored.
E_FAIL_BAD_ENVIRONMENT_FATAL 0x8000910A A fatal error occurred while preparing to run the program, for example when creating the program execution environment, making a network connection, impersonating the user, determining the file association information, or when attempting to launch the program. This program execution will not be retried.
E_FAIL_EXECUTION_FATAL
0x80009101
A fatal error has been encountered while attempting to run the program. The program execution will not be retried.
E_FAIL_INVALID_PROGRAM_OBJECT 0x80009102 An error occurred while creating the execution context.
This is error code indicates that an error was encountered while creating the internal execution context object. This is most likely not due to configuration errors, but could be because of low memory conditions, COM failures or other external errors.
E_FAIL_INVALID_CMDLINE 0x80009104 The command line for this program is invalid.
E_FAIL_NO_CONTENT 0x80009106 Failed to verify the executable file is valid or to construct the associated command line.
E_FAIL_NO_SOURCE 0x80008107 Failed to access all the provided program locations. This program may retry if the maximum retry count has not been reached.
E_INVALID_CONTENT_REQUEST_HANDLE 0x80008200 This is an internal error. No content request found with the given handle.
E_NO_SPACE_IN_CACHE 0x80008201 The content download cannot be performed because there is not enough available space in cache or the disk is full.
E_CACHE_TOO_SMALL 0x80008202 The content download cannot be performed because the total size of the client cache is smaller than the size of the requested content.
E_CACHE_IN_USE 0x80008203 The client cache is currently in use by a running program or by a download in progress.
E_NO_DP_FOUND 0x80008204 NOTE: this error code is sent at least in status message 10051.
No distribution points were found for the requested content.
E_FAIL_LOCATION_REQUEST 0x80008210 Failed to get content locations.
E_FAIL_JOB_PENDING 0x80008250 The computer restart cannot be initiated because a software installation job is in progress.
E_FAIL_INACCESSIBLE_SOURCE 0x80009108 Failed to access all the provided program locations. This program will not retry.
E_FAIL_INVALID_MSI 0x80009109 Failed to verify that the given file is a valid installation package.

Software Updates Custom Error Codes

Error Code Description
E_UPDDEPLOY_APPLY_NOT_REQUIRED
CCM_ERRORCODE(0x80040708)
2147747592
Software Updates Install not required.
E_MONITOR_RESUME_FAILURE
CCM_ERRORCODE(0x80040709)
2147747593
Failed to resume the monitoring of the process.
E_INVALID_CMDLINE
CCM_ERRORCODE(0x8004070A)
2147747594
Invalid command line
E_CREATEPROCESS_FAILURE
CCM_ERRORCODE(0x8004070B)
2147747595
Failed to create process
E_EXECUTION_TIMEOUT
CCM_ERRORCODE(0x8004070C)
2147747596
Software update execution timeout
E_UPDATE_FAILED_RESULT
CCM_ERRORCODE(0x8004070D)
2147747597
Software update failed when attempted
E_EMPTY_COMMANDLINE
CCM_ERRORCODE(0x8004070E)
2147747598
Empty command line specified
E_INVALID_INSTALLER_PATH
CCM_ERRORCODE(0x8004070F)
2147747599
Invalid updates installer path
E_COMPARE_CREATION_TIMES
CCM_ERRORCODE(0x80040710)
2147747600
Failed to compare process creation time.
E_DEPLOYMENT_NOT_ACTIVE
CCM_ERRORCODE(0x80040711)
2147747601
Software updates deployment not active yet for example, start time is in future
E_UPDDEPLOY_REBOOT_REQUIRED
CCM_ERRORCODE(0x80040712)
2147747602
A system restart is required to complete the installation.
E_NO_DETECT_RESULT
CCM_ERRORCODE(0x80040713)
2147747603
Software updates detection results not received yet.
E_UPDATES_USERINSTALL_RESTART_PENDING
CCM_ERRORCODE(0x80040714)
2147747604
User based install not allowed as system restart is pending.
E_USERINSTALL_NO_UPDATES
CCM_ERRORCODE(0x80040715)
2147747605
No applicable updates specified in user install request.
E_NOINTERFACE
FFFFFFFF80004002
-2147467262
No such interface supported
[DCOM belly up] CAgent::CreateJob failed
FFFFFFFF8007000E
-2147024882
Not enough storage is available to complete this operation.
ERROR_TIMEOUT
FFFFFFFF800705B4
-2147023436
This operation returned because the timeout period expired.
[Scan fails on x64vista] OnSearchComplete
0x80240032[WU]
-2145124302
Failed to end search job [SMS] WU client failed Searching for update with error.
WU_E_PT_WINHTTP_NAME_NOT_RESOLVED Same as –
ERROR_WINHTTP_NAME_NOT_RESOLVED FFFFFFFF8024402C
-2145107924
The proxy server or target server name cannot be resolved.
FFFFFFFF80040692
-2147219822
Group Policy conflict
FFFFFFFF80040693
-2147219821
Low WUA version
WU_E_PT_HTTP_STATUS_BAD_GATEWAY
FF80244021
-2145107935
Same as HTTP status 502. The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request.
-939523070
ERROR_OBJECT_ALREADY_EXISTS
FFFFFFFFC8000402
Object already exists
[SA fail if SWD not working] createInstance failed for UpdateServiceManager FFFFFFFF80040154
-2147221164
Class not registered
FFFFFFFF800705B4
-2147023436
This operation returned because the timeout period expired.
ERROR_INTERNET_TIMEOUT
FFFFFFFF80072EE2
-2147012894
Internet timeout
ERROR_WINHTTP_CANNOT_CONNECT or ERROR_INTERNET_CANNOT_CONNECT
FFFFFFFF80072EFD
-2147012867
Internet cannot connect
E_INVALIDSTATE_AFTER_APPLY
FFFFFFFF80040668
-2147219864
Software update still detected as actionable after apply.
E_EXECUTION_TIMEOUT
FFFFFFFF8004070C
-2147219700
Software update execution timeout
WU_E_PT_WINHTTP_NAME_NOT_RESOLVED – same as ERROR_WINHTTP_NAME_NOT_RESOLVED
FFFFFFFF8024402C
-2145107924
The proxy server or target server name cannot be resolved.
ERROR_PATH_NOT_FOUND
FFFFFFFF80070003
-2147024893
The system cannot find the path specified.
ERROR_FILE_EXISTS
FFFFFFFF80070050
-2147024816
The file exists
ERROR_ACCESS_DENIED or E_ACCESS_DENIED
FFFFFFFF80070005
-2147024891
Access denied
WU_E_PT_WINHTTP_NAME_NOT_RESOLVED Same as ERROR_WINHTTP_NAME_NOT_RESOLVED
FFFFFFFF8024402C
-2145107924
The proxy server or target server name cannot be resolved.
ERROR_INAVILD_ENVIROMENT
FFFFFFFF8004070D
-2147219699
Software update failed when attempted.
Install Errors
-Last Install Error
FF8024402C WU_E_PT_WINHTTP_NAME_NOT_RESOLVED – same as ERROR_WINHTTP_NAME_NOT_RESOLVED
2145107924
The proxy server or target server name cannot be resolved.
Last Install Error
FF8007066F
ERROR_PATCH_NOT_APPLIED
-2147023249
Can sometimes happen when Windows Installer configuration for an installed application is out of sequence for example, Windows Installer thinks it has more patches applied than is really the case (this sometimes used to happen with roaming profiles).
Last Install Error
FF8007064
ERROR_INSTALL_FAILURE
-2147023293
Generic failure code from Windows Installer installs.
Last Install Error
FF8007F0F4
STATUS_PREREQUISITE_FAILED
-2146963212
Generated by update.exe. People seem to be getting this when they try to install a Service Pack while on battery power.
Last Install Error
FF8007F0F5
WU_E_DM_INCORRECTFILEHASH
-2146963211
The WU Agent’s metadata store and the policy received by ccmexec could be out of sync.
Last Install Error
FF8007F0F6
ERROR INVALID PARAMETER
-2146963212
Failed to start the installation of updates because update is not found
Scan Failures
Last Scan Error
FF80244021
WU_E_PT_HTTP_STATUS_BAD_GATEWAY
-2145107935
Possible network connectivity issues
Last Scan Error
FF8024001D
WU_E_INVALID_UPDATE
-2145124323
An update contains invalid metadata.
Last Scan Error
FF80004002
E_NOINTERFACE
-2147467262
No such interface supported
Last Scan Error
FFC8000402
RECORD TOO BIG
-939523070
This seems to be a recoverable error, and possibly due to many Scan Service Packages left around when the 2003 ITMU was used. This is NOT the case.
FF8024400A
WU_E_PT_SOAPCLIENT_PARSE
1097366519818
Needs update
Last Scan Error
WU_E_SERVICE_STOP
FF8024001E
-2145124322
Operation did not complete because the service or system was being shut down.
Last Scan Error
FF8024400D
WU_E_PT_SOAP_CLIENT
-2145107955
SOAP client found the message was malformed.
Last Scan Error
FFC800042D
RefreshServerUpdateInfo
-939523027
WSUS unable to update software distribution folder. Scans fail.
Last Scan Error
FF80244022
WU_E_PT_HTTP_STATUS_SERVICE_UNAVAIL
-2145107934
HTTP status 503. The service is temporarily overloaded.
Last Scan Error
FF80240032
WU_E_INVALID_CRITERIA
-2145124302
The search criteria string was invalid.
Last Scan Error
FF80240013
WU_E_DUPLICATE_ITEM
-2145124333
Failed to add file to the FileLocationList.
Last Scan Error
FF8007041D
ERROR SERVICE REQUEST TIMEOUT
-2147023843
The service did not respond to the start or control request in a timely fashion.
E_FAIL_POLICY_NOT_FOUND
CCM_ERRORCODE(0x80040600)
2147747328
Scan Tool Policy not found
E_LOCATION_TIMEOUT
CCM_ERRORCODE(0x80040602)
2147747330
Out of cache space
E_SCANTOOL_POLICY_REMOVED
CCM_ERRORCODE(0x80040603)
2147747331
The ScanTool Policy has been removed so cannot complete Scan Operation.
E_SCANTOOL_NOTFOUND_INJOBQUEUE
CCM_ERRORCODE(0x80040604)
2147747332
The ScanTool was not found in the job queue.
E_FAIL_SCAN_TOOL_REMOVED
CCM_ERRORCODE(0x80040605)
2147747333
Scan Tool has been Removed
E_FAIL_OFFLINE_SCAN_HISTORY_NOT_FOUND
CCM_ERRORCODE(0x80040606)
2147747334
Scan Tool Policy not found
E_CONTENT_NOT_FOUND
CCM_ERRORCODE(0x80040607)
2147747335
Out of cache space
E_INVALID_INSTANCE_TYPE
CCM_ERRORCODE(0x80040608)
2147747336
Out of cache space
E_NO_SPACE_IN_CACHE
0x80008201
2147516929
Out of cache space
E_CACHE_TOO_SMALL
0x80008202
2147516930
Cache size is smaller than requested content’s size.
Deployments Agent Specific Errors
E_UPDDEPLOY_APPLY_NOT_ALLOWED CCM_ERRORCODE(0x80040700)
2147747584
Install not allowed
E_UPDDEPLOY_DOWNLOAD_NOT_ALLOWED CCM_ERRORCODE(0x80040701)
2147747585
Download not allowed
E_ASSIGNMENT_POLICY_NOT_FOUND
CCM_ERRORCODE(0x80040702)
2147747586
Assignment policy not available
E_ANOTHER_JOB_IN_PROGRESS
CCM_ERRORCODE(0x80040703)
2147747587
Only one job is allowed at a time
E_HARDREBOOT_PENDING
CCM_ERRORCODE(0x80040704)
2147747588
Only one job is allowed at a time.
2147747589
E_PAUSE_STATE_REQUIRED
CCM_ERRORCODE(0x80040705)
Pause state required
2147747590
E_NO_ACTIVE_JOB
CCM_ERRORCODE(0x80040706)
No active job exists (while reconnect called).
2147747591
E_JOB_ID_MISMATCH
CCM_ERRORCODE(0x80040707)
Job Id mismatch (while reconnect called).
Categories: SCCM / SMS Tags: , ,