Friday, March 11, 2016

AppV5 - Sequencing Logibec eClinibase

I was given a new application to sequence:
Logibec's eClinibase.

This application has some restrictions:
1) It has an updater that will pull down .exe's
2) It won't launch from a script in the bubble.  Example:
cmd.exe /appvve:%PACKAGEGUID%_%VERSIONGUID%
cd /d C:\Logibec\eClinibase\ilgi11
eclinibase.exe

Will crash.

I'm going to address point 2) first because it's weird and interesting.

Why does it crash?  Because, somehow, it breaks out of the bubble.  The reason it crashes is it looking for some registry keys that don't exist outside the bubble and it explodes.  The keys it looks for are:


On a local install if I delete the environment keys that matchup to the folder we're launching eClinibase from, I get the same error.  Since those keys don't exist outside the bubble, we get the same error...  Which means it's trying to look outside the bubble for some reason.  Powershell, however, works correctly but only if the exe is called directly:


However, we CAN get it to stay 'in the bubble' if we launch the eClinibase.exe with the /appvve: switch.



This is the first time I've ever encountered this where launching the application from a command prompt inside the AppV bubble fails, but it will work if you launch the exe with the /appvve: switch.

So that's weird that we need to launch it specifically that way, but it appears to work so I guess that's a limitation we have to roll with.

So how do we address point 1)?

I've used this technique before and it works here.  We will create a directory symlink to a network file share where the users will have full permission to update the application.  Since these updates occur 'as needed' the different environments may update at different times, this keeps them in sync across all of our Citrix servers since they will all point to the same location.

I add the mklink command the DynamicDeploymentConfig.xml:

And we are good to go!

4 comments:

Vigneshwaran said...

Case 1: You have pointed the update to a share location. How does it update the package? Why not disable the auto-update feature in the package? Just Curious to know.

Case 2: Didn't it work when you try using Cmd.exe /c START "" "app.exe" for case 2?

Trentent said...

Hi Vigneshwaran,
Case 1: The apps team *wants* the autoupdate feature. :/

Case 2: I assume you mean after you are already in the bubble with the cmd.exe /appvvee:GUID?

C:\Users\trententtye>cmd.exe /appvve:c29cdedf-b340-4398-9bf1-e5cc61665d57_2d177413-ded4-4876-b39d-4ec48dd4e062
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.

C:\Users\trententtye>cd C:\LOGIBEC\eClinibase\ilgi11

C:\LOGIBEC\eClinibase\ilgi11>cmd.exe /c START "" "eClinibase.exe"

Fails :(

Vigneshwaran said...

Case 2: No, not from inside the Virtual bubble. I learnt this tweak from Dan Gough, just edit the shortcut and add cmd.exe /c START "" "eClinibase.exe". Try once and let me know.

Trentent said...

Hi Vigneshwaran,

I'm sorry, I'm not understanding very well. If I open a command prompt, and go "cd C:\LOGIBEC\eClinibase\ilgi11" and "cmd.exe /c START "" "eClinibase.exe"" it fails because it requires registry keys that only exist within the bubble.