Fn key on internal keyboard does not work after Windows 10 migration

I used Winclone 8 and after some frustration (due to new Apple security), I was able to migrate a Bootcamp partition from a 2017 Macbook Pro, to a new 16" 2019 Macbook Pro.

I normally work with an external keyboard and dual external monitors but noticed a couple of weeks ago that when using only the laptop, the internal keyboard does not respond as it should. The “fn” key does nothing, the Touch-Bar does not change to show the Function keys when the fn button is pressed. I cannot use fn+Delete to delete forward as normally expected, etc.

It’s been rumored that I should locate and delete the internal keyboard driver in Windows, and it should automatically re-install when rebooting… but I am nervous about how I can do this.

Thoughts?

That is the route i would take. Since you have an external keyboard and mouse, it seems unlikely that you would get locked out after removing the drivers.

tim

OK, so this one has been laying dormant for a while… (I was sick), but now that I’ve gotten back to it, I am having problems running Sysprep and therefore cannot normalize my installation in order to backup and reinstall for the correct machine!

The Sysprep “Setupact.log” file shows the following when trying to run. Ideas are appreciated!

2020-06-26 17:12:44, Info                  SYSPRP ========================================================
2020-06-26 17:12:44, Info                  SYSPRP ===          Beginning of a new sysprep run          ===
2020-06-26 17:12:44, Info                  SYSPRP ========================================================
2020-06-26 17:12:44, Info       [0x0f004d] SYSPRP The time is now 2020-06-26 17:12:44
2020-06-26 17:12:44, Info       [0x0f004e] SYSPRP Initialized SysPrep log at C:\Windows\System32\Sysprep\Panther
2020-06-26 17:12:44, Info       [0x0f0054] SYSPRP ValidatePrivileges:User has required privileges to sysprep machine
2020-06-26 17:12:44, Info       [0x0f007e] SYSPRP FCreateTagFile:Tag file C:\Windows\System32\Sysprep\Sysprep_succeeded.tag does not already exist, no need to delete anything
2020-06-26 17:12:44, Info       [0x0f003d] SYSPRP WinMain:Displaying dialog box for user to choose sysprep mode...
2020-06-26 17:12:50, Info       [0x0f00d7] SYSPRP WinMain:Pre-validing 'cleanup' internal providers.
2020-06-26 17:12:50, Info                  SYSPRP RunDlls:Running platform actions specified in action file for phase 3
2020-06-26 17:12:50, Info                  SYSPRP SysprepSession::CreateSession: Successfully created instance with action file C:\Windows\System32\Sysprep\ActionFiles\Cleanup.xml, and mode <null>
2020-06-26 17:12:50, Info                  SYSPRP SysprepSession::Validate: Beginning action execution from C:\Windows\System32\Sysprep\ActionFiles\Cleanup.xml
2020-06-26 17:12:50, Info                  SYSPRP SysprepSession::CreateXPathForSelection: Sysprep mode in registry is <null>
2020-06-26 17:12:50, Info                  SYSPRP SysprepSession::CreateXPathForSelection: Processor architecture in registry is AMD64
2020-06-26 17:12:50, Info                  SYSPRP ActionPlatform::LaunchModule: Executing method 'Sysprep_Clean_Validate_Opk' from C:\Windows\System32\spopk.dll
2020-06-26 17:12:50, Info                  SYSPRP Sysprep_Clean_Validate_Opk:Sysprep will run on an upgraded OS.
2020-06-26 17:12:50, Info                  CSI    00000001 Shim considered [l:125]'\??\C:\Windows\Servicing\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.18362.892_none_5efe5b5a590f76dc\wcp.dll' : got STATUS_OBJECT_PATH_NOT_FOUND
2020-06-26 17:12:50, Info                  CSI    00000002 Shim considered [l:122]'\??\C:\Windows\WinSxS\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.18362.892_none_5efe5b5a590f76dc\wcp.dll' : got STATUS_SUCCESS
2020-06-26 17:12:50, Info                  SYSPRP Sysprep_Clean_Validate_Opk: Successfully validated reserves state on the machine for entering audit mode.
2020-06-26 17:12:50, Info                  SYSPRP ActionPlatform::LaunchModule: Successfully executed 'Sysprep_Clean_Validate_Opk' from C:\Windows\System32\spopk.dll without error
2020-06-26 17:12:50, Info       [0x0f00d7] SYSPRP WinMain:Pre-validing 'generalize' internal providers.
2020-06-26 17:12:50, Info                  SYSPRP RunDlls:Running platform actions specified in action file for phase 1
2020-06-26 17:12:50, Info                  SYSPRP SysprepSession::CreateSession: Successfully created instance with action file C:\Windows\System32\Sysprep\ActionFiles\Generalize.xml, and mode <null>
2020-06-26 17:12:50, Info                  SYSPRP SysprepSession::Validate: Beginning action execution from C:\Windows\System32\Sysprep\ActionFiles\Generalize.xml
2020-06-26 17:12:50, Info                  SYSPRP SysprepSession::CreateXPathForSelection: Sysprep mode in registry is <null>
2020-06-26 17:12:50, Info                  SYSPRP SysprepSession::CreateXPathForSelection: Processor architecture in registry is AMD64
2020-06-26 17:12:50, Info                  SYSPRP ActionPlatform::LaunchModule: Executing method 'ValidateBitLockerState' from C:\Windows\System32\BdeSysprep.dll
2020-06-26 17:12:50, Info                  SYSPRP ActionPlatform::LaunchModule: Successfully executed 'ValidateBitLockerState' from C:\Windows\System32\BdeSysprep.dll without error
2020-06-26 17:12:50, Info                  SYSPRP ActionPlatform::LaunchModule: Executing method 'SysprepGeneralizeValidate' from C:\Windows\System32\AppxSysprep.dll
2020-06-26 17:12:50, Info                  SYSPRP Entering SysprepGeneralizeValidate (Appx) - validating whether all apps are also provisioned.

2020-06-26 17:12:50, Error                 SYSPRP Package Microsoft.Windows.HolographicFirstRun_10.0.17134.1_neutral_neutral_cw5n1h2txyewy was installed for a user, but not provisioned for all users. This package will not function properly in the sysprep image.

2020-06-26 17:12:50, Error                 SYSPRP Failed to remove apps for the current user: 0x80073cf2.

2020-06-26 17:12:50, Error                 SYSPRP Exit code of RemoveAllApps thread was 0x3cf2.

2020-06-26 17:12:50, Error                 SYSPRP ActionPlatform::LaunchModule: Failure occurred while executing 'SysprepGeneralizeValidate' from C:\Windows\System32\AppxSysprep.dll; dwRet = 0x3cf2
2020-06-26 17:12:50, Error                 SYSPRP SysprepSession::Validate: Error in validating actions from C:\Windows\System32\Sysprep\ActionFiles\Generalize.xml; dwRet = 0x3cf2
2020-06-26 17:12:50, Error                 SYSPRP RunPlatformActions:Failed while validating Sysprep session actions; dwRet = 0x3cf2
2020-06-26 17:12:50, Error      [0x0f0070] SYSPRP RunDlls:An error occurred while running registry sysprep DLLs, halting sysprep execution. dwRet = 0x3cf2
2020-06-26 17:12:50, Error      [0x0f00d8] SYSPRP WinMain:Hit failure while pre-validate sysprep generalize internal providers; hr = 0x80073cf2
2020-06-26 17:18:17, Info       [0x0f0052] SYSPRP Shutting down SysPrep log
2020-06-26 17:18:17, Info       [0x0f004d] SYSPRP The time is now 2020-06-26 17:18:17

Try migrating without Sysprep. It may work and not require you to use it at all.

tim

Hi, we have to go back to the beginning (long time ago) to explain:

  1. The original migration was from a 2017 MacBook Pro to a 2019 MacBook Pro. The Hardware profiles are different, which is why the “already installed” Bootcamp Drivers files do NOT work properly. (e.g. Keyboard F-keys and “fn” key do NOT work properly when using the internal Mac keyboard).
  2. For this reason, I am trying to use Sysprep to remove all the “custom” Bootcamp Drivers… basically Normalize the installation, backup using Winclone, then wipe and restore to the same 2019 machine and Re-Install Bootcamp Drivers for the CORRECT machine!
  3. The problem is… Sysprep does NOT work! So I cannot Normalize the installation and am stuck with Bootcamp Support files from the 2017 Mac or a 2019 machine!

Have you tried downloading the Windows Support tools on your new mac using the Boot Camp Assistant, putting those on a USB drive, and running setup.exe on the Windows side? That has resolved similar issues for me in the past and should just overwrite / repair the drivers on your system.

Of course,… that was the start of the issue. The proper drivers do NOT load because Windows thinks they are already there. AND, Windows will NOT let you remove them “the normal way,” which is why we got to the suggestion of Sysprep!

Of course,… that was the start of the issue. The proper drivers do NOT load because Windows thinks they are already there. AND, Windows will NOT let you remove them “the normal way,” which is why we got to the suggestion of Sysprep!