Jump to content


anyweb

How can I install Windows 10 language packs offline with an MDT Integrated Task Sequence in System Center Configuration Manager (Current Branch)

Recommended Posts

It looks very similar to what I saw with 1803 ADK, MDT 8450, and Win10 1803 image. The step to install language pack offline takes about 1 second to run and doesn't do much. Looking at the ZTIPatches_DISM.log file, it looks like ZTIPatches.wsf from MDT is failing to update the unattend.xml file. So when DISM runs, it's not seeing that it has any packages to install. I'll keep digging.

From a failed log:

2018-08-07 15:22:21, Info                  DISM   DISM Provider Store: PID=2736 TID=352 Getting Provider DISM Package Manager - CDISMProviderStore::GetProvider
2018-08-07 15:22:21, Info                  DISM   DISM Provider Store: PID=2736 TID=352 Provider has previously been initialized.  Returning the existing instance. - CDISMProviderStore::Internal_GetProvider
2018-08-07 15:22:21, Info                  DISM   DISM Provider Store: PID=2736 TID=352 Getting Provider DISM Unattend Manager - CDISMProviderStore::GetProvider
2018-08-07 15:22:21, Info                  DISM   DISM Provider Store: PID=2736 TID=352 Provider has previously been initialized.  Returning the existing instance. - CDISMProviderStore::Internal_GetProvider
2018-08-07 15:22:21, Info                  DISM   DISM Package Manager: PID=2736 TID=352 <servicing> node not found. Nothing to do. - CPackageManagerUnattendHandler::Apply
 

From a successful log:

2018-08-08 13:40:38, Info                  DISM   DISM Provider Store: PID=720 TID=1124 Getting Provider DISM Package Manager - CDISMProviderStore::GetProvider
2018-08-08 13:40:38, Info                  DISM   DISM Provider Store: PID=720 TID=1124 Provider has previously been initialized.  Returning the existing instance. - CDISMProviderStore::Internal_GetProvider
2018-08-08 13:40:38, Info                  DISM   DISM Provider Store: PID=720 TID=1124 Getting Provider DISM Unattend Manager - CDISMProviderStore::GetProvider
2018-08-08 13:40:38, Info                  DISM   DISM Provider Store: PID=720 TID=1124 Provider has previously been initialized.  Returning the existing instance. - CDISMProviderStore::Internal_GetProvider
2018-08-08 13:40:38, Info                  DISM   DISM Package Manager: PID=720 TID=1124 Attempting install from source location [C:\_SMSTaskSequence\Packages\PACKAG~1\MICROS~1.CAB]. Full path [C:\_SMSTaskSequence\Packages\PACKAG~1\MICROS~1.CAB]. - CPackageManagerUnattendHandler::Internal_InstallPackageFromSource
 

Share this post


Link to post
Share on other sites

dism.exe /Quiet /Add-Package /Image:%OSDTargetSystemDrive%\  /PackagePath:. /LogPath:%_SMSTSLogPath%\dism-lang.log

The above is the command I use to inject the driver package. That is a "Run Command Line" TS Step, using a package with the specific language pack I want injected into the OS. I have both the language pack and also the language features in the package so I can use speech to text and other features.  I use a TS Var to determine which ones get installed/injected. This is placed right after Apply Operating System, but before Drivers and Setup Windows and Configuration Manager steps.

This works using ADK 1803, SCCM 1802 + HF1, deploying Win 10 1703.

Thanks,

Share this post


Link to post
Share on other sites

This was massively helpful thankyou! I will try to implement your full solution shortly, however, I want to be able to install ja-jp language pack as an isolated task sequence (deploying the LP to a desktop that is already imaged). I have created a new task sequence, used the Install Language Packs Offline option and added/distributed the contents (.cab file containing the language pack) - there is only 1 step in the task sequence (to install the LP) - and it seems to fail shortly after downloading the content. error code 0x00000032. I doubt the 'full' solution will work if the standalone install of the LP using sccm's wizard-task sequence will work. 

 

Any ideas why this task sequence fails? Or how we can retrospectively add a language pack to a pre-built machine (whilst the user is logged in/off)?

Share this post


Link to post
Share on other sites

that error usually means unsupported subsystem (like using an x86 package in an x64 os or vice versa), but without the full smsts.log it's hard to be sure

Share this post


Link to post
Share on other sites

It seems the .cab file has to be installed under PE mode, not during a logged in session. Never mind.

I have another question - I have tried to tailor your example to substitute RegionValue for OSDComputName variable (which is declared in PE environment before the OS is deployed) . So, if OSDComputerName like TOK , then Japanese language settings are applied etc. I have read that SCCM can't handle 'like' or 'contains' queries (and for reference, I used a Custom Variable, same as you do) to declare OSDComputerName. I'm now finding that the components aren't installing, but no idea where to check on client logs where this went wrong, and why.

We want to build PC's by the region, and SCCM to detect the OSDComputerName, then apply the relevant language packs and UI languages depending on this variable. 

Do you know which logs to check, or anything to watch out for when doing things this way? I think the reason my deployment failed has something to do with OSDComputerName not being a custom variable, but I'm not sure how i should declare this in the:

IF OSDComputerName like TOK THEN

SET OSDLanguage to ja-jp

 

Declarations...

attached example

 

OSDComputerName.PNG

Share this post


Link to post
Share on other sites

Hello Nail, I created task sequence according the post. I am deploying on baremetal. I dont have any HTA. Is there any way i can provide region value and language value. I am deploying only in polish and english. SO i have added only polish.

any suggestions?

 

Regards

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...


×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.