Pages

Showing posts with label deployment. Show all posts
Showing posts with label deployment. Show all posts

Wednesday, 5 March 2014

Microsoft Error Codes seen during SCCM software deployments

I may have posted this before - I can't remember.
 
 
 
Error code               Value  Description
---------------------------------------------------------------------------
ERROR_SUCCESS               0   Action completed successfully.
ERROR_INVALID_DATA         13   The data is invalid.
ERROR_INVALID_PARAMETER    87   One of the parameters was invalid.
ERROR_INSTALL_SERVICE_
 FAILURE                 1601   The Windows Installer service could not be 
                                accessed. Contact your support personnel 
                                to verify that the Windows Installer 
                                service is properly registered.
ERROR_INSTALL_USEREXIT   1602   User cancel installation.
ERROR_INSTALL_FAILURE    1603   Fatal error during installation.
ERROR_INSTALL_SUSPEND    1604   Installation suspended, incomplete.
ERROR_UNKNOWN_PRODUCT    1605   This action is only valid for products that
                                are currently installed.
ERROR_UNKNOWN_FEATURE    1606   Feature ID not registered.
ERROR_UNKNOWN_COMPONENT  1607   Component ID not registered.
ERROR_UNKNOWN_PROPERTY   1608   Unknown property.
ERROR_INVALID_HANDLE_
 STATE                   1609   Handle is in an invalid state.
ERROR_BAD_CONFIGURATION  1610   The configuration data for this product is 
                                corrupt. Contact your support personnel.
ERROR_INDEX_ABSENT       1611   Component qualifier not present.
ERROR_INSTALL_SOURCE_
 ABSENT                  1612   The installation source for this product 
                                is not available. Verify that the source 
                                exists and that you can access it.
ERROR_INSTALL_PACKAGE_
 VERSION                 1613   This installation package cannot be 
                                installed by the Windows Installer 
                                service. You must install a Windows 
                                service pack that contains a newer version 
                                of the Windows Installer service.
ERROR_PRODUCT_
 UNINSTALLED             1614   Product is uninstalled.
ERROR_BAD_QUERY_SYNTAX   1615   SQL query syntax invalid or unsupported.
ERROR_INVALID_FIELD      1616   Record field does not exist.

ERROR_INSTALL_ALREADY_
 RUNNING                 1618   Another installation is already in 
                                progress. Complete that installation 
                                before proceeding with this install.
ERROR_INSTALL_PACKAGE_
 OPEN_FAILED             1619   This installation package could not be 
                                opened. Verify that the package exists and 
                                that you can access it, or contact the 
                                application vendor to verify that this is 
                                a valid Windows Installer package.
ERROR_INSTALL_PACKAGE_
 INVALID                 1620   This installation package could not be 
                                opened. Contact the application vendor to 
                                verify that this is a valid Windows 
                                Installer package.
ERROR_INSTALL_UI_
 FAILURE                 1621   There was an error starting the Windows 
                                Installer service user interface. Contact 
                                your support personnel.
ERROR_INSTALL_LOG_
 FAILURE                 1622   Error opening installation log file. 
                                Verify that the specified log file 
                                location exists and is writable.
ERROR_INSTALL_LANGUAGE_
 UNSUPPORTED             1623   This language of this installation package 
                                is not supported by your system.
ERROR_INSTALL_TRANSFORM_
  FAILURE                1624   Error applying transforms. Verify that
                                the specified transform paths are valid.
ERROR_INSTALL_PACKAGE_
 REJECTED                1625   This installation is forbidden by system 
                                policy. Contact your system administrator.
ERROR_FUNCTION_NOT_
 CALLED                  1626   Function could not be executed.
ERROR_FUNCTION_FAILED    1627   Function failed during execution.
ERROR_INVALID_TABLE      1628   Invalid or unknown table specified.
ERROR_DATATYPE_MISMATCH  1629   Data supplied is of wrong type.
ERROR_UNSUPPORTED_TYPE   1630   Data of this type is not supported.
ERROR_CREATE_FAILED      1631   The Windows Installer service failed to 
                                start. Contact your support personnel.
ERROR_INSTALL_TEMP_
 UNWRITABLE              1632   The temp folder is either full or 
                                inaccessible. Verify that the temp folder 
                                exists and that you can write to it.
ERROR_INSTALL_PLATFORM_
 UNSUPPORTED             1633   This installation package is not supported 
                                on this platform. Contact your application 
                                vendor.
ERROR_INSTALL_NOTUSED    1634   Component not used on this machine.
ERROR_PATCH_PACKAGE_
 OPEN_FAILED             1635   This patch package could not be opened. 
                                Verify that the patch package exists and 
                                that you can access it, or contact the 
                                application vendor to verify that this is 
                                a valid Windows Installer patch package.
ERROR_PATCH_PACKAGE_
 INVALID                 1636   This patch package could not be opened. 
                                Contact the application vendor to verify 
                                that this is a valid Windows Installer 
                                patch package.
ERROR_PATCH_PACKAGE_
 UNSUPPORTED             1637   This patch package cannot be processed by 
                                the Windows Installer service. You must 
                                install a Windows service pack that 
                                contains a newer version of the Windows 
                                Installer service.
ERROR_PRODUCT_VERSION    1638   Another version of this product is already 
                                installed. Installation of this version 
                                cannot continue. To configure or remove 
                                the existing version of this product, use 
                                Add/Remove Programs on the Control Panel.
ERROR_INVALID_COMMAND_
 LINE                    1639   Invalid command line argument. Consult the 
                                Windows Installer SDK for detailed command 
                                line help.
ERROR_INSTALL_REMOTE_
  DISALLOWED             1640   Installation from a Terminal Server
                                client session not permitted for 
                                current user.
ERROR_SUCCESS_REBOOT_
  INITIATED              1641   The installer has started a reboot.
                                This error code not available 
                                on Windows Installer version 1.0.
ERROR_PATCH_TARGET_
  NOT_FOUND              1642   The installer cannot install the
                                upgrade patch because the program
                                being upgraded may be missing, or the
                                upgrade patch updates a different
                                version of the program. Verify that 
                                the program to be upgraded exists on
                                your computer and that you have the 
                                correct upgrade patch.
 
                                This error code is not available on
                                Windows Installer version 1.0.
ERROR_SUCCESS_REBOOT_
 REQUIRED                3010   A restart is required to complete the 
                                install. This does not include installs 
                                where the ForceReboot action is run. Note 
                                that this error will not be available until 
                                future version of the installer. 
    

Wednesday, 17 July 2013

Upgrade Microsoft OCS 2007 to Lync 2013 in a Windows 7 x86 environment using SCCM 2007: Part 2

Continued from Part 1

Compressing the Lync Client (cont...)

You will now have a folder called Microsoft_Lync_2013_x86_01 containing:









  • This is now the source folder we will point our SCCM package to.  
  •  You will now need to create a program in the package and point it to the TSINSTALL.bat

Creating the Task Sequence

There were several factors involved in my choice to use a task sequence to do this.  Mainly because we can run command lines directly from the TS rather than having to come up with a massively long boring script.

  • Create a new task sequence under the Operating System Deployment section of SCCM
  • Choose "create a new custom task seqeunce"
  • Name it Install Lync 2013 x86 and click finish
  • Add an Install Software step and call it Install Microsoft Lync 2013 x86
  • Choose the package and program you created earlier (an assumption)
  • Create a run command line step to kill of the Communicator process.  Name it Kill Communicator Process and use the command: taskkill /im communicator.exe /f
  • Create a run command line step to kill of the Outlook process.  Name it Kill Outlook Process and use the command: taskkill /im outlook.exe /f
  • Create a run command line step called Remove Live Meeting with the command: MsiExec.exe /X{A98AFBC7-D5A7-46A1-8795-EABE2F55A7D6} /qn REBOOT=ReallySuppress
  • Create a run command line step called Remove OCS 2007 with the command: MsiExec.exe /X{E5BA0430-919F-46DD-B656-0796F8A5ADFF} /qn REBOOT=ReallySuppress
  • Create a run command line step called RemoveOutlook Plugin using the command: MsiExec.exe /X{1DE3088D-E607-4EB0-9223-106E7B5AF2F1} /qn REBOOT=ReallySuppress
  • Create a run command line step called Delete Source Files with the command del c:\lync2013x86 /F /Q - run this step with an admin account as per the tick box at the bottom.
Your Task Sequence should look this this.
*I ticked "Continue on error" in the options tab on every step EXCEPT the install Lync step.




Click OK to save the Task Sequence.

Now advertise the task sequence out to a collection - I advise not populating the collection yet - just test this on 1 computer for now and then add a few more once your happy it's working the way it should.  Tailor the advertisment in as way to suit you; Silently or with an on screen prompt etc. ASAP or a timed schedule...

I AM NOT RESPONSIBLE FOR YOUR CHOICES OF TARGET - DON'T BLAME ME IF YOU TRASH YOUR ESTATE WITH THIS METHOD!!!

This is what will happen.

  1. Target computer will recieve policy from SCCM
  2. TS will launch and copy over source folder
  3. Program will run which will create the extract source, extract the 7z install and run setup.exe
  4. Once Lync has installed the TS will kill off OCS & Outlook
  5. It will remove Live Meeting, OCS and the Outlook Plugin
  6. Source files are deleted.


I really hope this works for people and I welcome any constructive comments....

docN

Upgrade Microsoft OCS 2007 to Lync 2013 in a Windows 7 x86 environment using SCCM 2007: Part 1

As part of our ongoing commitments to optimise our users desktop experience; our infrastructure team are currently implementing a Lync back end.  Of course it comes to me to package and deploy the client out to our estate.  As we are currently running a mixture of XP and Win7/8 there is a different method required for XP.

In this post I will explain how I went about packaging up Lync so it would remove any legacy installs of Office Communicator and replace it will Lync.

This is going to be a lengthy one so make coffee - LOTS of coffee.  Hopefully though it will help other people to achieve the same as me should that be what they require.

You will need the following:

Lync 2013 x86 client (I downloaded the ISO from our VLSC)
7zip (executable AND command line) http://www.7-zip.org/

Assumptions:

  • You are proficient in SCCM 2007 packaging and deploying
  • you have used the OCT to customise Office installs
  • You require a silent install 


Packaging the Lync client

Customising the install

Assuming you have the above we will first setup the Custom.MSP file via the OCT.  Once you have extracted the ISO your file structure will look like the above.  You will not have the "Admin" shortcut so we create that now.


  1. Right click "setup.exe" and click "create shortcut"
  2. Rename "setup.exe - shortcut" to "Admin"
  3. Right click "Admin" and at the end of the Target path you need to add "/admin".  Mine looks like this: "\\MYSCCMSERVER\Packages\Microsoft_Lync_2013_x86\setup.exe" /admin
  4. Click OK
  5. Double click Admin and you will be prompted to create or open an MSP file - just click OK to create a new one.
  6.  Under Setup, click Install location and organisational name - enter your org name here.
  7. Under Licensing & User Interface choose your method of entering the product key - I use KMS.
  8. Click I accept the terms... box, change display level to "none" and tick suppress modal
  9. Under "Additional content" click "Add registry entries" and add the following:
  10. Machine setting
    1. Root : HKEY_Local_Machine
    2. Type: DWORD
    3. Key: Software\Policies\Microsoft\Office\15.0\Common\General
    4. Name: ShownFirstRunOptin
    5. Value: 0×00000001
  11. User Setting
    1. Root : HKEY_Current_User
    2. Type: DWORD
    3. Key: Software\Microsoft\Office\15.0\Common\General
    4. Name: ShownFirstRunOptin
    5. Value: 1
Once you are happy that you have customised your install accordingly click "file" "save as" and save the file into the "updates" folder of the Lync package as "custom.msp".

Compressing the Lync Client

Using 7zip we will now compress the source folder.  Simply right click the folder that contains your install and select 7-Zip>Add to "(foldername).7z"

Create a second folder and add the resulting 7z file - this is the folder that will be deployed over to the clients machines.  For this example mine is called "Microsoft_Lync_2013_x86_01"

Add the 7za.exe command line tool you downloaded (you did download it right?)
Create a batch file called "TSINSTALL.bat".  In the batch file add the following lines:

md c:\lync2013x86
7za.exe x Microsoft_Lync_2013_x86_01.7z -oC:\lync2013x86
cd c:\lync2013x86
setup.exe

Continue to PART 2



Monday, 8 October 2012

Java Deployment (x86)

I've spent many hours searching the net for a definitive guide on how to successfully deploy Java across a network and to newly deployed machines.

In this instance I'm trying to add Java to an Operating System Deployment using Microsoft SCCM with two particular settings automated into the deployment.

I want the automatic updates to be disabled as this is constantly screwing up our clinical systems that get delivered to the users desktop as an update of Java resets several settings we have to configure post install.

The other is the Proxy set to "Direct Connection" as again our clinical systems hate any interference from the Proxy settings.


I've decided to repost my steps here in hope that it will help a fellow tecchy one day:

  • Download your choice of Java - I'm using 1.6.0.31.
  • Run the.exe and run to C:\Users\\AppData\LocalLow\Sun\Java\jre1.6.0_31
  • Copy the Data1.cab and jre1.6.0_31 files out of there into a folder of their own.
  • I already have a working WIM image I captured last week and didn't want to go through another capture so using the DISM GUI tool  I mounted my WIM and added a folder structure and the deployment.properties file to: C:\Users\Default\AppData\LocalLow\Sun\Java\Deployment.  Other settings for the deployment.properties file are available here.
  • Within deployment.properties was the following - it's actually one I created by manually altering the settings from the Java control panel and capturing the file from C:\Users\[username]\AppData\LocalLow\Sun\Java\Deployment
#deployment.properties
#Tue Apr 13 13:59:54 BST 2010
deployment.version=6.0
deployment.proxy.type=0
deployment.javaws.autodownload=NEVER
deployment.javapi.cache.update=true
deployment.security.mixcode=DISABLE
deployment.browser.path=C\:\\Program Files\\Internet Explorer\\iexplore.exe
#Java Deployment jre's
#Tue Apr 13 13:59:54 BST 2010
deployment.javaws.jre.0.product=1.6.0_31
deployment.javaws.jre.0.registered=true
deployment.javaws.jre.0.osname=Windows
deployment.javaws.jre.0.platform=1.6
deployment.javaws.jre.0.path=C\:\\Program Files\\Java\\jre6\\bin\\javaw.exe
deployment.javaws.jre.0.location=http\://java.sun.com/products/autodl/j2se
deployment.javaws.jre.0.enabled=true
deployment.javaws.jre.0.osarch=x86


  • I committed the changes to the Wim and uploaded it back to our deployment server :::EDIT::: DON'T FORGET TO UPDATE THE DISTRIBUTION POINT!!!
  • Created a package for Java 31
  • Used the command line for the package program: msiexec.exe /i jre1.6.0.31.msi /qn
  • Hey presto - I'm now getting a Java deployment that automatically uses the settings defined in the deployment.properties file I created! BOOM !!!

Friday, 14 October 2011

Lenovo Driver Installs via OS Deployment

Any tech unfortunate enough to have to visit Lenovo's driver page will agree it isn't the friendliest of places.  Kind of like my home town of Preston at about 2am on a Sunday morning; you only go there if you have to and get the hell out of there as quick as you can - and DON'T make eye contact with anyone!

The naming convention in non existent - unlike their competition such as Dell and HP who have meaningful, descriptive file names for their drivers and respective folders.

If you require a solution to deploy Lenovo drivers throughout your estate then don't despair - there is an answer.

In addition to the handy [yeah, don't do us any favors Lenovo] TVT System Updater tool they provide for individual clients they also developed the "Update Retriever" & "ThinInstaller" as part of their Think Vantage Toolkit (TVT) branded client tool solution.

To configure SCCM to deliver driver updates (it's also capable of MS updates but that's another story) there are a couple of solutions out there but this is the one I settled with:

Assumptions :
  • You have a deployment solution in place already with relevant TaskSequence - if not please see the wonderful WindowsNoob tutorials- big shout out to Niall Brady for this site - it's an invaluable resource to any SCCM tech.
  • You are proficient with SCCM
  • You know the machine type of the Lenovo machine you are using

  • Download the above software and install Update Retriever [UR] locally on your machine or the SCCM server.  Set it up and create a folder to act as the repository for the update and driver files and share it out - mines called "Update Retiever".  Tell UR to download to this folder (follow Lenovo's instructions if your struggling but it's straight forward)
  • Create a package in SCCM for ThinInstaller (TI) from the files that are extracted from the crappy compressed .exe you end up with and within the package create a program as below:
  1. Create a batch file and call it something meaningful like "copyfiles.bat"
  2. Within the batch file use the command: xcopy.exe \\SCCMSERVER\DISTRIBUTIONPOINT\PACKAGENAME\*.* c:\lenovo\thininstaller\ /E /D where SCCMSERVER = your servername/IP of server DISTRIBUTIONPOINT = the folder used for your DP packages (i.e. SMSPKGD$) and PACKAGENAME = the name of the package (i.e. LCT000B8).  This will copy the ThinInstaller software locally to the client as it needs to run from a local folder and doesn't extract and "install" as such.
  3. Create an "Install Software" task sequence entry under "State Restore" that calls the batch file "copyfiles.bat"
  • Create a "Run Command Line" task sequence and call it something like "Run ThinInstaller"
  • Use cmd line: cmd.exe /c thininstaller.exe /CM -search A -action INSTALL -repository \\SCCMSERVER\Update_Retriever  -noicon -includerebootpackages 1,2,3,4 -noreboot *don't forget to change this path to suit your config.
  • Start in: c:\lenovo\thininstaller -this is where the files were copied to.
  • Time-out - 120
This should now enable the client to run ThinInstaller locally and pull over all the relevant drivers for that model.

Wednesday, 12 October 2011

PXE Boot pulling the wrong Windows PE wim

 If like me you are working with multiple architectures of Microsoft OS there will be occasions where you would like to push out a 64bit OS - more so in recent years due to the increasing popularity of 64bit platforms.

SCCM is my weapon of choice but I have found that sometimes even if a machine is placed in the 64bit deployment collection with the 64bit deployment task sequnce advertsied; it will still throw out the 32bit PE.

This is if a collection has multiple advertisments it will churn out the latest image to be advertised.  To get around this I found a great article on "Network Steve" that I have included below:

I had the exact same problem;
I wanted to be able to boot x86 or x64 Unknown Computers and image them. I have figured a very simple and erffective work around to this problem of the last advertised task winning...
I edited the query in the Unknown Computers collection to add: and Name LIKE "%x86%"
here's the complete query for the "Unknown Computers" collection
select SMS_R_UNKNOWNSYSTEM.ResourceID,SMS_R_UNKNOWNSYSTEM.ResourceType,SMS_R_UNKNOWNSYSTEM.Name,SMS_R_UNKNOWNSYSTEM.Name,SMS_R_UNKNOWNSYSTEM.Name from SMS_R_UnknownSystem where Decommissioned = "0" and Name LIKE "%x86%"
Then I created a new collection called "Unknown Computers x64" and used the following query:
select SMS_R_UNKNOWNSYSTEM.ResourceID,SMS_R_UNKNOWNSYSTEM.ResourceType,SMS_R_UNKNOWNSYSTEM.Name,SMS_R_UNKNOWNSYSTEM.Name,SMS_R_UNKNOWNSYSTEM.Name from SMS_R_UnknownSystem where Decommissioned = "0" and Name LIKE "%x64%"
Next, Advertise your x86 Task Sequences to the Unknown Computers query and your x64 Task Sequences to the Unknown Computers x64 query.
Now, as long as the computer is not in the SCCM database, when you PXE boot it will get the correct image.
Good LuckDoug

http://www.networksteve.com/enterprise/topic.php/Boot_Image_pulling_wrong_Windows_PE_interface/?TopicId=25850&Posts=4