Friday, October 12, 2018

App-V 5, SCCM and Duplicate Connection Groups


Out in the real world, we began to see machines with multiple duplicated connection groups (CGs).  The duplicate CGs were not causing any problems in themselves because only one of them was globally published but they did make things look very messy.  It is quite disconcerting to list the connection groups (-all) and get back a list where several have exactly the same name. 

So how does this occur?

SCCM manages CGs in the virtual environments (VEs) section of the SCCM console.  When a VE is modified or a machine is added/removed to/from a package collection which is related to an item in the VE, SCCM fairly quickly begins to ripple out that change to the clients.  If the machine is logged off, the CG exists but is not in use, or the CG is not pre-existing, then the CG is created without issue.

However, if the CG exists already and is in use, then SCCM is unable to immediately affect the change.  In this case SCCM appears to create a new CG anyway and then tag it in the HKLM\Software\Microsoft\AppV\Client\PendingTasks using a text string item called PublishGroup with the GroupID_VersionID as the identifier.

If the CG remains in use SCCM will create another unpublished CG and write the PendingTasks key everytime the Application Deployment Evaluation Cycle runs.

If the CG is closed, the PendingTasks item is applied if the Microsoft App-V Client is restarted or the client is rebooted.

Reproduced on
Windows 10 Enterprise 1703
SCCM Client v5.00.8412.1000


Wednesday, October 3, 2018

Reflection X App-V launch error



An App-V 5 Micro Focus Reflection Desktop Pro 16.1.430 sequence may cause a launch error in the Reflection X application


Rxcs.exe - System Error 
The program can't start because ATMCRYPTO.dll is missing from your 
computer. Try reinstalling the program to fix this problem. 

This is followed by:


Error: NOT FOUND X Client Manager Object 

A procmon run appeared to show that the exe was not locating some dll resources in the locations that it was checking.

The resolution was achieved by copying some dll files to the same folder as the exe during the sequencing process.

Carry out the following file copies from
C:\Program Files (x86)\Micro Focus\Reflection
To
C:\Program Files (x86)\Micro Focus\Reflection\R14
atmcrypto.dll
atmcryptonf.dll
atmtls.dll
atmtlsnf.dll

Carry out the following file copies from
C:\Windows\SysWOW64
to
C:\Program Files (x86)\Micro Focus\Reflection\R14

atl100.dll
FM20enu.DLL
FM20.DLL
mfc100chs.dll
mfc100.dll
mfc100deu.dll
mfc100cht.dll
mfc100enu.dll
mfc100esn.dll
mfc100rus.dll
mfc100jpn.dll
mfc100fra.dll
mfc100ita.dll
mfc100kor.dll
mfc100u.dll
mfc120cht.dll
mfc120chs.dll
mfc120deu.dll
mfc120.dll
mfc120jpn.dll
mfc120ita.dll
mfc120enu.dll
mfc120fra.dll
mfc120esn.dll
mfc120rus.dll
mfc120kor.dll
mfcm120u.dll
mfcm120.dll
mfc120u.dll
mfcm100u.dll
mfcm100.dll
msvcp120.dll
msvcp100.dll
msvcr100.dll
vcomp100.dll
vcomp120.dll
vccorlib120.dll
msvcr120.dll


If correcting an existing package, the sequence can be opened in update mode whereupon it is possible locate the relevant files by their date stamp corresponding to the time of the sequence extraction.  They can then be copied to the C:\Program Files (x86)\Micro Focus\Reflection\R14 folder during the update monitoring phase.


This Micro Focus support link describes a similar but not identical problem.
https://support.microfocus.com/kb/doc.php?id=7022796

MSOffice components

Do not sequence Reflection on a machine which has Microsoft Office installed.  Some of the installation components are lower version VBA files.  Sequencing on a machine with an Office install can cause required items to be ommitted from the package which can then fail to open session files with macros if Office is not installed on the client.