Summary
Updated: November 21, 2014.On October 15, 2014, Microsoft released an update (KB2995388) for Windows 8.1. In some cases, installing this update may result in a compatibility issue with VMware Player, the hypervisor software used by Moka5. This article describes the issue, a workaround, and an expected resolution.
Applies to
- Moka5 3.19 -- Moka5 4.1.x LivePCs on Windows 8.1 hosts
Resolved In
This issue is resolved in Moka5 4.1.4. A patch to resolve this issue in 4.0.x will be available shortly.
Download the 4.1.4 patch from the Customer Support Portal.
Important: If you deployed the host script workaround, you can remove the VMware configuration setting it enabled by deploying a removal host script in the same Player update that includes 4.1.4. For information on removing the settings, read "Removing the VMware configuration setting."
Background
On October 15, 2014, Microsoft released a non-security update (KB2995388) for Windows 8.1. In some cases, installing this update may result in a compatibility issue with VMware Player, the hypervisor software used by Moka5.
In the November Patch Tuesday cycle, Microsoft changed the classification of this update from “Optional” to “Important.” As a result, any Windows 8.1 host configured to automatically update will now download and install this patch, which may increase the incidence of this issue in customer environments.
Issue Description
On launch, the LivePC displays an error about having insufficient host memory to launch the virtual machine.
This error is incorrect. While the host likely has sufficient memory to perform the action, a compatibility issue between VMware Player and the Windows 8.1 KB2995388 update is causing the LivePC to fail to start.
Workaround
We are working on patch updates to 4.1 and 4.0 that include support for VMware Player 6.0.4, which will resolve this compatibility issue. We will update you with delivery timelines soon.
In the meantime, to restore LivePC function, you can deploy a host script workaround that will detect the presence of the problematic Windows update and then apply a configuration change to resolve the compatibility issue.
Using a host script to add a VMware configuration setting
Download the host script here.This host script resolves the compatibility issue by adding a VMware configuration setting. This setting restricts the amount of host RAM that the guest can use to 75%. We have tested this configuration setting and have not observed any noticeable performance differences after applying the change. After utilizing this host script, deployments that allocate more than 75% of host memory to the guest will now be limited to 75%.
This setting will automatically be removed when Moka5 Player is upgraded to support VMware Player 6.0.4, which resolves this compatibility issue.
The host script first detects whether KB2995388 is installed. If it finds the update, it displays a message to the user. When the user clicks Continue, the host script adds the VMware configuration setting to %APPDATA%\VMware\config.ini to restrict the amount of host RAM consumed by the guest. The host script then restarts the host machine, after which the user can relaunch Moka5 and access their LivePCs.
If the host script does not detect update KB2995388, it does not prompt the user, and the user can launch their Player and LivePC as usual.
Important: Users should save their work and close all open applications before accepting the host script prompt.
- On Player launch, the host script detects KB2995388 and displays the following message:
- If the user clicks Continue, the configuration setting is applied and the host is automatically restarted.
- If the user clicks Cancel, Player shuts down.
After the host restart, the user can access their Player and LivePCs as usual.
Changing the host script text
You can modify the text the host script displays. For example, you can add a phone number for your System Administrator or tech support.
To modify the host script text:
- Open the host script directory.
- Locate and open msg.txt. This file contains the text displayed by the host script.
- Make changes to the text up to 2 MB in size.
- Save msg.txt.
Important: Do not save msg.txt with a different name.
Adding this host script to an existing bundle
If you're already using host scripts, you can add this functionality by adding the contents of the .zipped host script directory to your host script bundle and modifying your existing tasks.xml to add the new host script’s data to the file.
The new tasks.xml should look like this:
<?xml version="1.0" encoding="UTF-8" ?>
<tasks>
<!--New script content -->
<task name_id="warning_app4" version="204">
<enable>true</enable>
<command>warning-app.exe --file msg.txt --up_vm 1</command>
<context>user</context>
<launch>on player start</launch>
<output>
<run_player>true</run_player>
<stdout>
<format env="true">kvp</format>
</stdout>
</output>
</task>
<!--Old script configuration -->
<task name_id="Old_host_Script" version="1/1/2014">
<enable>true</enable>
<command>python Old_Host_Script.py </command>
<context>user</context>
<launch>on player start</launch>
<output>
<stdout>
<format env="true">kvp</format>
</stdout>
</output>
</task>
</tasks>
Moka5 4.1.4: Removing the VMware configuration setting
Once you have uploaded the 4.1.4 Client Pack to your Management Server, you can add the host script that removes the VMware configuration setting. This host script is called “RemoveConfigSetting.”
Download the host script here.Important: For the best user experience, target the new host script and 4.1.4 Client Pack to your Windows users at the same time. Targeting the new Client Pack and modified host script simultaneously allows you to distribute all changes to your users in one Player update.
- If the only host script you are using is the VMware configuration setting host script, upload the RemoveConfigSetting script to the Management Server.
- Alternatively, if you have deployed a host script bundle, update the file to include the RemoveConfigSetting host script.
Important: Remove the information for the host script enabling the VMware configuration setting.
Example:
Before the upgrade, your tasks.xml includes the VMware configuration setting host script:
<?xml version="1.0" encoding="UTF-8" ?>
<tasks>
<!--New script content -->
<task name_id="warning_app4" version="204">
<enable>true</enable>
<command>warning-app.exe --file msg.txt --up_vm 1</command>
<context>user</context>
<launch>on player start</launch>
<output>
<run_player>true</run_player>
<stdout>
<format env="true">kvp</format>
</stdout>
</output>
</task>
<!--Old script configuration -->
<task name_id="Old_host_Script" version="1/1/2014">
<enable>true</enable>
<command>python Old_Host_Script.py </command>
<context>user</context>
<launch>on player start</launch>
<output>
<stdout>
<format env="true">kvp</format>
</stdout>
</output>
</task>
</tasks>
After updating the host script bundle with the RemoveConfigSetting host script's tasks.xml information, your tasks.xml should look like this:
<?xml version="1.0" encoding="UTF-8" ?>
<tasks>
<!—Remove Config Setting Script -->
<task name_id="vmconfig_cleanup400" version="400">
<enable>true</enable>
<command>wscript.exe invisible.vbs vmconfig_cleanup.bat</command>
<context>user</context>
<launch>on player start</launch>
<output></output>
</task>
<!--Old script configuration -->
<task name_id="Old_host_Script" version="1/1/2014">
<enable>true</enable>
<command>python Old_Host_Script.py </command>
<context>user</context>
<launch>on player start</launch>
<output>
<stdout>
<format env="true">kvp</format>
</stdout>
</output>
</task>
</tasks>
- Upload the new host script bundle to the Management Server.
After applying the patch and updating your host script or bundle, target the update to your Windows users.
- Log in to the Moka5 Management Console with a Desktop Administrator account.
- In Policies > Player Policies, target the 4.1.4 Player version and the host script or bundle to Windows users.
- Click Save Changes to deploy the update.
Important: Only click Save Changes once, after targeting both the Client Pack and the host script. If you save twice, you will deploy two updates to your users. For more information on using host scripts on Mac and Windows hosts,
read our Knowledge Base article.