Userinit value is wrong and not set correctly after startup scripts run when instant clones are in use

Product: ProfileUnity

Product Version: 6.8.0, 6.8.1

Expires on: 365 days from publish date

Updated: December 14, 2018



The "Userinit" value of the registry key shown below is incorrect.

Key - "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"
Value - "Userinit"


When using instant clones, the synchronization process sets the "Userinit" registry value after "Lwl.ProfileUnity.Client.Startup.exe" has run at boot. Two examples of incorrect values are shown below.

"C:\Windows\System32\userinit.exe","C:\Program Files\VMware\VMware View\Agent\bin\vmlm_helper.exe","C:\Program Files\VMware\VMware View\Agent\bin\wssm.exe",


"C:\Windows\System32\userinit.exe", "C:\Program Files\ProfileUnity\userinit.exe","C:\Program Files\VMware\VMware View\Agent\bin\vmlm_helper.exe","C:\Program Files\VMware\VMware View\Agent\bin\wssm.exe",

These two are incorrect because "C:\Windows\System32\userinit.exe" should not be present in this location after the ProfileUnity client tools are installed. An example of a correct value is shown below.

"C:\Program Files\ProfileUnity\userinit.exe","C:\Program Files\VMware\VMware View\Agent\bin\vmlm_helper.exe","C:\Program Files\VMware\VMware View\Agent\bin\wssm.exe", 

Possible Resolution(s): 

ProfileUnity 6.8.2 and Later ProfileUnity Command service is responsible for fixing userinit registry key. Please check HKLM\Software\Liquidware Labs\ProfileUnity ExpectedUserinitValue

For earlier versions:

1. Download the file linked at the bottom of this page, rename it to "" and extract the included files listed below.


2. Log on to the VM used as the base image for your instant clone pool. Ensure both the ProfileUnity client tools and View agent are installed. Launch "regedit.exe", navigate to the "Userinit" value referenced above, double-click said value and copy the string value contained.

3. Open "LwL.ProfileUnity.Client.RegUpdate.exe.config" and paste the contents copied from the "Userinit" registry value in the "value />" block referenced in the example config below.

<setting name="RegValue" serializeAs="String">
<value>"C:\Program Files\ProfileUnity\userinit.exe","C:\Program Files\VMware\VMware View\Agent\bin\vmlm_helper.exe","C:\Program Files\VMware\VMware View\Agent\bin\wssm.exe",</value>

There are several options that can be used to execute the fix.

Option A) Use post synchronization script (Guest Customization).

1. Open your document editor of choice and input the following commands and save as a ".bat" file on the base image VM -e.g. "RegUpdate.bat" in "C:\Program Files\ProfileUnity\Client.Net\LwL.ProfileUnity.Client.RegUpdate.exe".

@echo OFF
%systemroot%\System32\cmd.exe /c "C:\Program Files\ProfileUnity\Client.Net\LwL.ProfileUnity.Client.RegUpdate.exe"

2. Once the above ".bat" script has been created, go to "NETLOGON\ProfileUnity" or your respective client tools network locationopen "" and place the "LwL.ProfileUnity.Client.RegUpdate.exe""LwL.ProfileUnity.Client.RegUpdate.exe.config" and "RegUpdate.bat" files inside "" and save it.

3. If not still logged on, log back on to the instant clone base image VM and reinstall the ProfileUnity client tools. Navigate to "C:\Program Files\ProfileUnity\Client.Net" and confirm the three files above (.exe, .config & .bat) are present then shut down the VM and take a new snapshot.

4. Log on onto the View Administrator web console, navigate to the instant clone pool, and click "Edit...". Select the "Guest Customization" tab and provide the file path of "RegUpdate.bat" in the "Post-synchronization script name" entry. Do not enclose the path in quotation marks as they are not valid characters.

5. Click "OK" to save the changes made and publish the snapshot created above. 

Option B) Use Local GPO to update userinit on gold image. 

1) Copy LwL.ProfileUnity.Client.RegUpdate.exe and LwL.ProfileUnity.Client.RegUpdate.exe.config to local directory on the gold image.

Open gpedit on the gold image

2) Navigate to Windows Startup Script 

3) Set Windows Startup script to run LwL.ProfileUnity.Client.RegUpdate.exe which was copied to local machine. 

4) Select Apply (Before exiting Group Policy Editor

5) Recompose your pool. 

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request


Article is closed for comments.