Sequencing Java Runtime Environment (JRE) 8u91 with App-V 5.1

There are various forums and websites around with information on this however I thought I’d share a step by step guide I created.

      1. Download JRE 8u91 x86 and run it on the sequencer VM
      2. Browse to %userprofile%\AppData\LocalLow\Oracle\Java\hre1.8.0_91 and copy the msi to C:\1
      3. Cancel the Java setup
      4. Launch the sequencer with the following command
      5. Open the sequencer and add the following path to the exclusions
      6. Click on Create New App-V Package then Create Package (default)
      7. Click Next
      8. Click Next
      9. Select custom installation and click next
      10. Enter a name and a PVAD which we’re NOT going to use
      11. Now run the msi using the following command. Give it some time to complete.
      12. Once complete, create the following registry key
      13. Create another registry key
      14. Use notepad (run as administrator) to edit the deployment.properties document under this location
      15. Add these two lines to the bottom and save
      16. Check I am finished installing and click Next
      17. Click Next
      18. Click Next
      19. Click Next
      20. Select Continue to modify package… and click Next
      21. IMPORTANT – Ensure this folder is set to override the local directory. This ensures that another other versions of Java (packaged or local) do not take priority over this version.
      22. IMPORTANT – Ensure write permission to the VFS is permitted. Allows the package to write the deployment.config file back to the VFS.

Group Policy

Get the Class ID of the Java Add-Ons by going into IE and Manage Addons.

Now create a Group Policy or create a new one and go to

Computer Configuration\Policies\Administrative Templates\Windows Components\Internet Explorer\Security Features\Add-on Management

Open the Add-on List GPO and pick Enabled then click Show

In the Value Name put the copied Class ID followed by a 2 in the next field.

0 = Disabled, 1 = Enabled (user can’t edit), 2 = Enabled (user can edit)

 

 

Sequencing Deltek Cobra 5.1 with Microsoft App-V 5.0

An issue arises following the sequencing and deployment of Deltek Cobra 5.1 whereby the application fails to launch. After some investigation it turned out that a file named DeltekCobraWorkstation.xml needs to exist within the Cobra 5 installation directory and MUST contain the correct hostname of the machine running the application or it will not launch.

Parameter – <UpdateServer>\\HOSTNAME\CobraWorkstation</UpdateServer>

Obviously this is a problem when using App-V as the hostname of the sequencing machine will be captured within this file during the sequencing process. The solution I used was to write a script which dynamically creates the required file with the correct hostname parameter.

Here is the script I created. You pass it the path and it will generate the file in that location. I didn’t really need to include the ability to pass the path as a parameter as the path ended up just being “..\Root\Cobra 5” however I didn’t realise this when first writing the script as I wasn’t aware that there was an inbuilt folder location that your scripts are stored in by default.

Set objFSO=CreateObject(“Scripting.FileSystemObject”)

‘Get computer name from env variables
set oShell = WScript.CreateObject(“WScript.Shell”)
set oShellEnv = oShell.Environment(“Process”)
computerName = oShellEnv(“ComputerName”)

‘Get file path from parameter and assign to strPath
strPath = WScript.Arguments(0)

‘Create text file overwriting any existing file
if right(strPath, 1) <> “\” then
objFSO.CreateTextFile strPath & “\DeltekCobraWorkstation.xml”, true
else
objFSO.CreateTextFile strPath & “DeltekCobraWorkstation.xml”, true
end if

‘Assign new text file to objFile variable
Set objFile = objFSO.OpenTextFile(strPath & “\DeltekCobraWorkstation.xml”, 2, True)

‘Write a line to the text file
objFile.Write “” & vbCrLf
objFile.Write “” & vbCrLf
objFile.Write ” \\” & computerName & “\CobraWorkstation” & vbCrLf
objFile.Write ” 5.01.746″ & vbCrLf
objFile.Write “”

‘Close the file now we’re done
objFile.Close

I then added the following to the deploymentconfig.xml file and applied it to the App-V application via the management console.

    <UserScripts>
                <StartVirtualEnvironment RunInVirtualEnvironment=”true”>
                                <Path>cscript</Path>
                                <Arguments>writexml.vbs “..\Root\Cobra 5” > %TEMP%\cobra-deploy-log.txt</Arguments>
                                <Wait RollbackOnError=”true” />
                </StartVirtualEnvironment>
    </UserScripts> 

At first I couldn’t get it to work with the sequenced app so I read more into the scripting and found that I had it in the wrong place. I had it in the MachineConfig section under PublishPackage however it needed to be under the UserConfig scripting section and it had to be run as part of StartVirtualEnvironment as this would allow interaction with the Virtual Environment.

To run this script I needed to ensure that scripting had been enabled on the client machines.

Set-AppVClientConfiguration -EnablePackageScripts 1

After that I ran Cobra 5.1 again and the script ran perfectly and brought me to the Cobra logon screen.

Backups Failing on Small Business Server 2011

You may have noticed your backups have suddenly stopped working (VSS Error 0x800423F3 – Event ID 8230). It’s possible that this started occurring following the Microsoft SharePoint Foundation 2010 Service Pack 1 (SP1) update. If this is the case then you need to complete the update process by updating the SharePoint databases.

In order to update the SharePoint databases, you must manually run the PSconfig utility:

  1. Open an Administrative command prompt.
  2. Change directory to C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN
  3. Run PSConfig.exe -cmd upgrade -inplace b2b -force -cmd applicationcontent -install -cmd installfeatures

For more information on this issue check out this article on TechNet.

SBS 2008 RWW Remote Desktop Issue for Windows 10 Clients

When you attempt to connect to a computer using Remote Desktop via SBS 2008 Remote Web Workplace you may receive an error like this: The wizard cannot configure Remote Desktop Connection settings. Make sure that the client version of Remote Desktop Protocol (RDP) 6.0 or later is installed on this computer.

To resolve this issue we need remove the RDP version check. On the Small Business Server browse to “C:\Program Files\Windows Small Business Server\Bin\webapp\Remote”. There will be a file named tsweb.aspx. Edit the file and look through it for a section that looks this:

Sub window_onload()
Dim targetMachineName
Dim version
On Error Resume Next
version = MsRdpClient.Version
if Err then
msgbox ControlLoadFailed_ErrorMessage,0,RemoteDesktopCaption_ErrorMessage
exit sub
end if
On Error GoTo 0
if strcomp(version,”6.0.6000″) < 0 then
msgbox IncorrectClientVersion_ErrorMessage, 0, RemoteDesktopCaption_ErrorMessage
window.close
exit sub
end if

Comment out the second part of that statement. To do that just add single quotes at the start of each line like so:

‘if strcomp(version,”6.0.6000″) < 0 then
‘ msgbox IncorrectClientVersion_ErrorMessage, 0, RemoteDesktopCaption_ErrorMessage
‘ window.close
‘ exit sub
‘end if

Do not use the Edge browser and ensure that the RWW site is in compatibility mode.

Unable to load HTTP webpages – SBS 2011 and Server 2008

If you are unable to load HTTP web pages however secure (HTTPS) webpages load fine then you need to ensure this registry entry is in place. This should be part of your initial setup process for SBS 2011.

  1. Start Registry Editor (Regedit.exe).
  2. Locate the following registry key:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters
  3. On the Edit menu, click New, click DWORD (32-bit) Value , and then add the following value:
    Value: MaxCacheTtl
    Data Type: DWORD
    Data value: 0x2A300  (172800 in decimal = 2 days)
  4. Click OK .
  5. Quit Registry Editor.
  6. Restart the DNS Server service.

This key determines how long the DNS server can save a record of a recursive name query.

More info here.