Archive for category deployment

SCCM Task Sequence Remove Video Drivers

During my project to upgrade all our Windows 7 Enterprise SP1 (64bit) devices to Windows 10 Enterprise 1809 (64bit), I ran into a compatibility issue during the task sequence. Windows 7 video drivers were detected as incompatible during the in-place upgrade to Windows 10, so I had to find a way to remove the drivers during the SCCM task sequence.

This is the batch file code I used to disable, then remove video drivers from the task sequence.

@ECHO OFF

REM Driver is disabled
devcon disable =display

REM Driver is removed here
devcon remove =display

REM reg add command replaces whatever value is in the SearchOrderConfig with the appropriate value to tell the system NOT to go to windows update for driver updates
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DriverSearching /t REG_DWORD /v SearchOrderConfig /d 0x0 /f

REM Driver package is removed here
FOR /F “tokens=4 delims= ” %%A IN (‘devcon driverfiles ^=display ^| FINDSTR “Driver installed from”‘) DO devcon.exe dp_delete -f %%A

EXIT 0

The following shows where in the task sequence I add the video driver removal step. Also, note that I have a step to copy devcon.exe utility which is not on Windows 7 by default.

SccmTsRemoveDrivers.png

I’ve extensively tested this on my DELL devices and it works perfectly.

, , , , , , , , , , ,

2 Comments

SCCM Task Sequence Error Code 0x80004005

While attempting to perform an in-place upgrade from Windows 7 Enterprise to Windows 10 Enterprise I came across Error Code 0x80004005.

Looking at C:\WINDOWS\CCM\Logs\smsts.log gave me the clues on the error message.

SCCM Error 1

There are many posts on how to fix this particular error message; it seems that this error code is pretty generic and it shows up on several instances in many SCCM operations – this document particularly deals with a task sequence for an in-place operating system upgrade.

Since this was an in-place Windows upgrade, I needed to find out more detailed information and I was able to get it from C:\$WINDOWS-BT\Sources\Panther this folder contains a list of .XML files that collect compatibility data that is collected during the upgrade process.

Win10UpgErrorLogLocation.png

I opened the last XML file and this gave me the actual clue as to what was failing during the upgrade process – video drivers were the culprit!

Win10UpgErrorLog.png

Now I know what’s going on during the task sequence and I can attempt to fix this issue.

I’ll blog about how to fix this issue in a new post, stay tuned!

, , , , , , ,

Leave a comment

Install Hyper-V Role to Windows Server 2012 R2 During OS Deployment

There are plenty of blogs about this subject, however, many of these blogs are outdated and some of their tips do not work properly for Windows Server 2012 R2. Also, in my case, I’m not using MSDT to install features and roles, but instead I’m using a captured WIM image.

To install Hyper-V role, just add a “Run Command Line” task, towards the end of the task sequence, Install Operating System task.

I’m using the following PowerShell command:

Powershell.exe -Command "& {&'Install-WindowsFeature' –Name Hyper-V -IncludeManagementTools -Restart}"

2016-10-28_1124

Also, here’s an interesting link that discusses this particular issue.

Leave a comment

SCCM 2012 R2 SP1 and User Device Affinity

I’m using the Boot Image to set User Device Affinity (UDA) to devices managed by SCCM 2012 R2 SP1.

First, here’s how we script looks to:

Dim userDA, smsUserMode
Set env = CreateObject("Microsoft.SMS.TSEnvironment")

' We enable UDA variable here - before assigning user
smsUserMode = "Auto"
env("SMSTSAssignUsersMode") = smsUserMode

userDA = Inputbox("Type a valid Active Directory user account." & vbCrLf & vbCrLf & _
"Format: DOMAIN\Username", "Name of primary user for device...")
env("SMSTSUdaUsers") = userDA

' writing to log
wscript.echo "User device affinity set to " & env("SMSTSUdaUsers")
wscript.echo "We're going to set UDA by setting SMSTSAssignUsersMode variable to: " & env("SMSTSAssignUsersMode")

I’m going to save this script on a shared network location. This code is widely used by many people, and I’m not the creator of it; I’ve just slightly modified it.

Next, I’m going to customize the Boot Image file in SCCM, see screenshot.

Boot Image UDA

That’s it!

, , , , , , ,

Leave a comment

Deploy JAVA & Disable JAVA’s AutoUpdate

The following will allow you to deploy JAVA, using an MSI, with the ability to disable JAVA’s AutoUpdate feature.

  1. Download JAVA manually from here
    1. You can download 64 and 32 bit version
  2. Next, run the installation file, but do not click anything else after the first screen
  3. Go to C:\Users\YourUserName\AppData\LocalLow\Oracle and find the extracted MSI file
  4. Copy the MSI to another location and use ORCA to modify the MSI fi le
    1. ORCA can be downloaded from here
  5. Go to the Properties table and change the properties highlighted in the screenshotJAVA No AutoUpdate
  6. Save the MSI and you’re now ready to deploy JAVA

, , , , ,

Leave a comment

Deploy AutoDesk Building Design Suite Premium 2015 with SCCM 2012

In this post, I’m going to go over the deployment of AutoDesk Building Design Suite Premium 2015 using SCCM 2012.

  1. You’re going to use AutoDesk BDSP setup wizard to create the ‘image’ folder using AutoCAD’s own image building process. This process will allow you to perform a standard, or custom, installation of AutoDesk’s applications and features, so I’m not going into details about this. At the end of this process, AutoDesk’s wizard will create a SMS_SCCM scripts folder which contains text files that will allow you to install and un-install BDSP; we’re going to use these text files for the deployment.
  2. The SCCM client imposes a folder size on C:\Windows\ccmcache folder, so we’re going to have to use another script to call the installation process scripts created in step 1.
INSTALL.BAT (calls the script created by BDSP in step 1)

@ECHO OFF

REM MAP NETWORK SHARE DRIVE
REM THIS COMMAND ASSUMES THAT THE USER HAS ACCESS TO THIS SHARE
REM ALL USERS SHOULD HAVE READ ACCESS TO THE SHARE
NET USE X: “\\ServerName\LocationOfBDSPfiles” /user:SomeUser SomePassword

REM CHANGE DRIVES
X:

REM INSTALL AUTODESK BUILDING DESIGN SUITE STANDARD 2015
.\Img\Setup.exe /W /q /I Img\AutoDesk BDS Premium 2015.ini /language en-us

REM REMOVE DESKTOP SHORTCUTS

DEL /Q “C:\Users\Public\Desktop\3ds Max Design 2015.lnk”
DEL /Q “C:\Users\Public\Desktop\AutoCAD*.lnk”
DEL /Q “C:\Users\Public\Desktop\Autodesk*.lnk”
DEL /Q “C:\Users\Public\Desktop\Navisworks Simulate 2015.lnk”
DEL /Q “C:\Users\Public\Desktop\Raster Design 2015*.lnk”
DEL /Q “C:\Users\Public\Desktop\Revit 2015.lnk”

REM CHANGE BACK TO C: DRIVE
C:

REM REMOVE NETWORK SHARE DRIVE
NET USE X: /DEL


I use the previous script in SCCM to create the deployment package.




Here’s what I use for a Detection Method, basically I’m looking for BDSP executable files on the target computer.



This process works well for my environment.

Make a note that this installation may take hours (2-4)…



Leave a comment