Friday, November 27, 2015

Task sequence failed with error code 0x80220005

My Windows 10 deploy task sequence failed with error code 0x8022005 when running Apply Windows Settings step in WinPE.

When i reviewed the Smsts.log (Under X:\Windows/temp/Smstslog\SMSts.log) I noticed below errors;
Failed to open the Task Sequencing Environment. Code 0x80220005. Please ensure you are running this executable inside a properly configured OS Deployment task sequence.
Unknown error (Error: 80220005; Source: Unknown) then followed by;
Failed to run the action: Apply Windows Settings. 
Unknown error (Error: 80220005; Source: Unknown)
I started looking backwards (upwards) in the log, and answer file showed HRESULT=80220005  error when setting up the computername. Straight after that step, the task sequence has failed.
pAnswerFile->SetComputerNameW(sValue), HRESULT=80220005 (e:\nts_sccm_release\sms\client\osdeployment\osdwinsettings\osdwinsettings.cpp,375)

Looking backwards few more lines under "osdwinsettings.exe" /config, there is an entry for Computer Name field with very long name (Computer Name: LABVMware-56 4d d7 f5 0e d4 bc 0e-78 84 ba d5 10 e5 ed 90).This seems to be the culprit.

I checked back my task sequence and noticed that the set computername step adding the serial number of the device with LAB prefix. In this instance, the serial number of the VM which is too long for computer name.

So I have modified the set computername script and tested. Now the Windows 10 deploy task sequence is working as it should.

Sunday, November 22, 2015

Windows could not parse or process the unattend answer file

I have been implementing Windows 10 enterprise solution to one of my client and bumped with below error over and over.
Windows could not parse or process the unattend answer file for pass [Speicalize]. The settings specified in the answer file cannot be applied. The error was detected while processing settings for component [Microsoft-Windows-Shell-Setup].
Windows could not parse or process the unattend answer file for pass [Speicalize] error

I have faced similar error in the past and successfully resolved by reviewing the computer name requirements for windows (mostly you will get similar error when you use invalid characters or long names in the computer name).
However this time the computer name is used as per the windows requirements but still having issues.

Eventually I went back to the task sequence and reviewed Apply Windows Settings step in the task sequence editor.
I have copied this task sequence from an existing task sequence. Previously I have used the same task sequence to deploy Windows 10 Preview and there is a product key entered in Apply Windows Settings step. I have removed the product key and tested. This time it worked without any issues.

The reason for the error is, The product key which was entered in the task sequence  is not applicable to the current version of the windows so the windows mini setup giving Windows could not parse or process the unattend answer file for pass [Speicalize] error.

Thursday, November 19, 2015

An error occurred while retrieving policy for this computer (0x80004005)

 An error occurred while retrieving policy for this computer  (0x80004005).
You will receive this error for various reasons. Please read my previous article.
Today I have received this error again on one of my VM on production VLAN where we use boot image to build the machines because of lack of DHCP options.

A quick review of SMSTS.log file showed me;
[Failed to get client identity (80004005) then
Setting wizard error: An error occurred while retrieving policy for this computer (0x80004005). For more information, contact your system administrator or helpdesk operator.

Apart from above error no much useful information in SMSTS.log file.

Further testing revealed that, all the PxE build are working fine except the VM’s with boot media.
A quick check to the boot media and when it was created has revealed that the ISO is more than one year old. Which means the default certificate validity for one year lapsed and the certificate expired.

Re-creating the boot media fixed the issue.

So the problem was with the expired certificate in boot media.

Monday, November 16, 2015

SCCM 2007 to SCCM 2012 migration

Some high level important points when migrating SCCM 2007 to SCCM 2012.

Migration from Config Manager 2007 to Configuration Manager 2012 is a side-by-side migration which means we need to build a new Configuration Manager 2012 hierarchy next to the current Configuration Manager 2007 hierarchy.

Terminology:
Source site: SCCM 2007 (The site you are migrating from)
Destination site: SCCM 2012 (The site you are migrating to)

The key steps and notes in migration process;
  • Review the supported SCCM migration hierarchy from source to destination migration (Minimum source is SCCM 2007 SP2)
  • Configure the migration (Linking the source and destination SCCM environments)
  • Plan for a staged approach
  • The source and destination sites must have unique site codes
  • Set appropriate permissions (destination site need access to the source site objects and SMS provider read access)
  • Review the firewall rules (To avoid any *unknowns*)
  • Make sure that the data gathering completes successfully before starting migration jobs
  • The migration of objects will be performed through three types of migration jobs;
    • Collection Migration (Collections and related objects)
    • Object Migration
    • Previously migrated object migration (Migration Objects modified after migration job)
  • Monitor all the data gathering or migration jobs under \Administration\Overview\Migration\Migration Jobs
  • Detailed migration process can be viewed on SMS_MIGRATION_MANAGER component status
  • Review migmctrl.log for migration status
  • Migration may take few months based on the complexity of the environment
  • Do not migrate packages which is not in use

Important Migration Rule:
  • Don't break the existing source (SCCM 2007) environment
  • Use unique site codes for source and destination

Objects not migrated using Microsoft Migration Utility:
- Queries
- Security rights and instances for the site and objects
- SCCM 2007 reports from SQL Server Reporting Services (SSRS)
- SCCM 2007 web reports
- Client inventory and history data
- AMT client provisioning information
- Files in the client cache

Migrating the DP:
Migrate the 2007/source distribution points after migrating all the objects and clients from 2007 environment. We can migrate the distribution point manually or automatically.
Before start migrating the distribution point review the requirements (Space, Roles etc…)

Client Migration:
  • Clients should be migrated only after all objects required by the clients have been migration
  • Client migration step is the last step of the migration process
  • Uninstall SCCM 2007 client and install SCCM 2012 based on the chosen method (Recommended - use SCCM 2007 to deploy SCCM 2012 client)
  • Use the site code in the installation command line to assign the site rather using boundary group

Rollback from SCCM 2012 to 2007:
  • Copy the SCCM 2007 Client source files to the package source
  • Create a package for SCCM 2007 in SCCM 2012 console
  • Deploy this package to the applicable devices / collection

Cleanup Process:
  • Delete all the migrated client from the source site
  • Delete the migration history for the source hierarchy
  • Decommission the source SCCM sites starting from the child sites in the hierarchy to the parent (From bottom to top)

Configuration Manager migration tools:

  • Microsoft Migration utility (Within SCCM 2012 console)
  • ReportSync (To sync the source reports to the destination SSRS)
  • Package Source Changer (T change the patch of the source)

Sunday, November 15, 2015

Open file security warning prompt SCCM OSD

If you are receiving open file security warning when running a script or an application within SCCM OSD task sequence that can be disabled using turning off the open file security warning using registry keys.

The following registry keys will disable the Open file security warning;
One REG key is required to be added to Current user.
REG ADD "HKU\Default\Environment" /V SEE_MASK_NOZONECHECKS /T REG_SZ /D 1 /F
Second REG key is required to add to Local Machine;
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V SEE_MASK_NOZONECHECKS /T REG_SZ /D 1 /F

Adding a registry key to local machine is easy and straight forward. However, adding to a current user registry key bit a tricky task for few.
I will show how to add the current user and as well as local machine keys without any issues;

1. Open the task sequence in edit mode
2. Create a run command line step then copy the below command;
REG LOAD HKU\Default C:\Users\Default\NTUSER.DAT
This will mount default user registry keys from NTUSER.DAT to HKEY Users\Default key


3. Create a 2nd command line step then copy the below command;
REG ADD "HKU\Default\Environment" /V SEE_MASK_NOZONECHECKS /T REG_SZ /D 1 /F
This will add registry value to the default user profile


4. Create a 3rd command line step then copy the below command;
REG UNLOAD HKU\Default
This will unmount the NTUSER.DAT file which we have mounted in step 2


5. Create a 4th command line step then copy the below command;
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V SEE_MASK_NOZONECHECKS /T REG_SZ /D 1 /F
This will add the SEE_MASK_NOZONECHECKS key and value to the local machine.
Now save the task sequence and test the deployment.

Friday, November 6, 2015

This product installation has been corrupted project 2013 visio 2013

When you are uninstalling Office suite or project or Visio, you may receive;
This product installation has been corrupted. Run setup again from the CD,DVD, or other original installation source. msg, even the source media is valid and works when you are install manually.
The reason for this msg is invalid command line syntax used to uninstall the product, mainly the product version.

If you are uninstall Visio professional the uninstall syntax will be;
setup.exe /uninstall vispro /config youruninstall.xml

If you are uninstall Visio Standard the uninstall syntax will be;
setup.exe /uninstall visstd /config youruninstall.xml