Well, I did have them tagged, and it got messy. I had categories and other stuff and it got all messy.
I am in no way proud of this "solution"... it is a terrible example of how to do something, but it works and he needed a solution. I would not blog it unless I could "Get" all the drivers in powershell and then put them on the new image in powershell. * messy = I messed it all up On Wed, Aug 10, 2016 at 11:15 AM, Jason Sandys <[email protected]> wrote: > That’s quite nice Todd – you should blog it. > > > > As an alternative – you could simply tag the drivers you add to a boot > image using a category. Then it’s super easy to see which ones are in a > boot image. It takes an extra step and some discipline to do this of > course, but so do most things that are good for you J > > > > J > > > > *From:* [email protected] [mailto:listsadmin@lists. > myitforum.com] *On Behalf Of *Todd Hemsell > *Sent:* Wednesday, August 10, 2016 10:46 AM > *To:* [email protected] > *Subject:* [mssms] Move Drivers from one boot image to another. > > > > What I do is open up the existing boot image and then open the SMSPROV.log > in cmtrace. THEN click on the drivers tab of the boot image. Once you can > see all of the drivers go to cmtrace and pause it. > > > > open the smsprov.log > Open the boot image. > Find the line like this > select all SMS_Driver.LocaleID,SMS_Driver.CI_ID,SMS_Driver.CI_ > UniqueID,SMS_Driver.DisplayName > > from fn_ListDriverCIs_List(1033) AS SMS_Driver where > (((((((((((((((((((((((((((((((((((((((((((((((SMS_Driver.CI_ID = > 16900711 OR SMS_Driver.CI_ID = 16900712) OR SMS_Driver.CI_ID = 16900713) OR > SMS_Driver.CI_ID = 16900714) OR SMS_Driver.CI_ID = 16900715) OR > SMS_Driver.CI_ID = 16900716) OR SMS_Driver.CI_ID = 16900717) OR > SMS_Driver.CI_ID = 16900718) OR SMS_Driver.CI_ID = 16900719) OR > SMS_Driver.CI_ID = 16900720) OR SMS_Driver.CI_ID = 16900721) OR > SMS_Driver.CI_ID = 16900722) OR SMS_Driver.CI_ID = 16900723) OR > SMS_Driver.CI_ID = 16900724) OR SMS_Driver.CI_ID = 16900725) OR > SMS_Driver.CI_ID = 16900726) OR SMS_Driver.CI_ID = 16900727) OR > SMS_Driver.CI_ID = 16900728) OR SMS_Driver.CI_ID = 16900729) OR > SMS_Driver.CI_ID = 16900730) OR SMS_Driver.CI_ID = 16900731) OR > SMS_Driver.CI_ID = 16900732) OR SMS_Driver.CI_ID = 16900733) OR > SMS_Driver.CI_ID = 16900734) OR SMS_Driver.CI_ID = 16900735) OR > SMS_Driver.CI_ID = 16900736) OR SMS_Driver.CI_ID = 16900737) OR > SMS_Driver.CI_ID = 16900738) OR SMS_Driver.CI_ID = 16900739) OR > SMS_Driver.CI_ID = 16900742) OR SMS_Driver.CI_ID = 16900743) OR > SMS_Driver.CI_ID = 16900744) OR SMS_Driver.CI_ID = 16900747) OR > SMS_Driver.CI_ID = 16900748) OR SMS_Driver.CI_ID = 16900749) OR > SMS_Driver.CI_ID = 17003831) OR SMS_Driver.CI_ID = 17074423) OR > SMS_Driver.CI_ID = 17074424) OR SMS_Driver.CI_ID = 17074425) OR > SMS_Driver.CI_ID = 17074426) OR SMS_Driver.CI_ID = 17074427) OR > SMS_Driver.CI_ID = 17074428) OR SMS_Driver.CI_ID = 17074429) OR > SMS_Driver.CI_ID = 17074430) OR SMS_Driver.CI_ID = 17074431) OR > SMS_Driver.CI_ID = 17074432) OR SMS_Driver.CI_ID = 17074433) OR > SMS_Driver.CI_ID = 17074434) > > You copy that SQL and open SQL management studio. Then replace the > "Select" portion (not the from or where clause) with this > > > > 'Add-BootImageDriver -SiteCode XXX -SiteServer SITESERVER -DriverCI ' + > CAST ( SMS_Driver.CI_ID AS nvarchar(10)) + ' -BootImagePackageID > "NEWBOOTIMAGEPACKAGEID"' AS [PS], > > > > The SQL output will look like this > > Add-BootImageDriver -SiteCode XXX -SiteServer USHDCCMXXX01 -DriverCI > 16777410 -BootImagePackageID XXX00134 > Add-BootImageDriver -SiteCode XXX -SiteServer USHDCCMXXX01 -DriverCI > 16777413 -BootImagePackageID XXX00134 > Add-BootImageDriver -SiteCode XXX -SiteServer USHDCCMXXX01 -DriverCI > 16777414 -BootImagePackageID XXX00134 > Add-BootImageDriver -SiteCode XXX -SiteServer USHDCCMXXX01 -DriverCI > 16777415 -BootImagePackageID XXX00134 > Add-BootImageDriver -SiteCode XXX -SiteServer USHDCCMXXX01 -DriverCI > 16777416 -BootImagePackageID XXX00134 > Add-BootImageDriver -SiteCode XXX -SiteServer USHDCCMXXX01 -DriverCI > 16777417 -BootImagePackageID XXX00134 > Add-BootImageDriver -SiteCode XXX -SiteServer USHDCCMXXX01 -DriverCI > 16777418 -BootImagePackageID XXX00134 > Add-BootImageDriver -SiteCode XXX -SiteServer USHDCCMXXX01 -DriverCI > 16777419 -BootImagePackageID XXX00134 > Add-BootImageDriver -SiteCode XXX -SiteServer USHDCCMXXX01 -DriverCI > 16777420 -BootImagePackageID XXX00134 > > > > Then open a SCCM PS prompt and paste this in there. > > Function Add-BootImageDriver > { > [CmdLetBinding()] > Param( > [Parameter(Mandatory=$True,HelpMessage="Please Enter Site Server Site > code")] > $SiteCode, > [Parameter(Mandatory=$True,HelpMessage="Please Enter Site Server > Name")] > $SiteServer, > [Parameter(Mandatory=$True,HelpMessage="Please Enter Driver CI_ID")] > $DriverCI, > [Parameter(Mandatory=$True,HelpMessage="Please Enter Boot Image > Packge ID")] > $BootImagePackageID > ) > > #Get the Boot image and the Driver > $BootImageQuery = Get-WmiObject -Namespace "Root\SMS\Site_$SiteCode" > -Class SMS_BootImagePackage -ComputerName $SiteServer -Filter "PackageID='$ > BootImagePackageID'" > $DriverQuery = Get-WmiObject -Namespace "Root\SMS\Site_$SiteCode" > -Class SMS_Driver -ComputerName $SiteServer -Filter "CI_ID='$DriverCI'" > > #Read the Lazy properties also > $BootImageQuery.Get() > > #New Driver details > $NewBootImageDriver = ([WMIClass]"\\$SiteServer\ > root\SMS\Site_$($SiteCode):SMS_Driver_Details").CreateInstance() > $NewBootImageDriver.ID = $DriverQuery.CI_ID > $NewBootImageDriver.SourcePath = $DriverQuery.ContentSourcePath > > #Add the driver details > $BootImageQuery.ReferencedDrivers += $NewBootImageDriver.psobject. > baseobject > $BootImageQuery.Put() > > } > > > > then copy the output of the SQL query and paste it into the powershell > command > > > >

