App-V 5 PVAD vs VFS Technical Differences RRS feed

  • General discussion

  • Hi all,

    For the purpose of this discussion, when I say sequence to PVAD I am referring to sequencing to the install directory: C:\Program Files\ABC.  When sequencing to the VFS, I am setting PVAD to C:\DummyFolder, and installing to C:\Program Files\ABC.

    As time has gone on with App-V 5, it seems there are more and more reasons to package to VFS.  However, we have had a few applications (unfortunately all home grown, but I'm working to find a reproducer), that do not work when sequenced to VFS, even with allowing VFS write.

    The latest issue we had was with a very small specific function of an application.  Everything else worked, but a particular dll function would not.  Even after a lot of procmon'ing, throwing files outside, I could not come up with any answers.
    What is really unfortunate is that this is (it has to be) part of a large CG with 5 other packages.  Making such a large change for a small function not working was a lot of effort, but also brings a lot of concern with how CGs merge. 
    (We also experienced an apparent issue with PVAD tokenization of registry keys, I wrote a wiki here if anyone is interested)

    I'm hoping to get a better understanding of what would cause something (anything) to work better installed to PVAD then installed to VFS.  What technically is different and why would a single package (not talking about CGs) work differently at all captured that way?

    Thursday, September 4, 2014 8:13 PM

All replies

  • Honestly? yeah, we wish we knew.....

    If you could share the apps that require PVAD that would be great..

    Nicke Källén | The Knack| Twitter: @Znackattack

    Saturday, September 13, 2014 9:50 AM
  • I know that there have been more, mainly in house apps where some deeply buried functionality failed, but I finally came up with a decent example of a package that works to PVAD and not VFS.
    Cisco Webex active X control.

    In fairness this maybe just a very abnormal app, but packaged to VFS with VFS write mode enabled does not work, the user gets an error about a file not being found.  This error can be seen a different way in the below screenshot.

    This screenshot is the same but from the PVAD package:

    To be honest I don't really know what information to post next, so I will just leave it at the above screenshots.  I will be happy to send the recipe but it was very simple (basically just go to the webex test meeting site and install the control).

    Friday, September 19, 2014 7:24 PM
  • Nice work.  Lets see if we can get to the bottom of this one.  If all else fails we can bring it up at the next product group meeting or at the MVP summit. 
    Saturday, September 20, 2014 3:08 PM
  • Thanks Cody.

    If it is possible to bring up something like this to the product group our company does have a general NDA with MS and we have been able to turn over in house apps for debugging, so I could definitely work on getting a package together as a reproducer.  I just can't post something like that publicly on technet.

    Monday, September 22, 2014 3:06 PM
  • Right now, there are some apps that may require PVAD as a one-off (like ArcGIS, for example.) But I generally avoid it from a consultative perspective and it has served me well. I know some disagree with me - even make personal attacks (bizarre :/ )

    Stay tuned though. App-V is still evolving. For now, when viewing package files in the sequencer advanced tab - "Gray is the Way." :) 

    Steve Thomas, Senior Consultant, Microsoft

    App-V/MED-V/SCVMM/Server App-V/MDOP/AppCompat

    The App-V Team blog: http://blogs.technet.com/appv/
    The MED-V Team Blog: http://blogs.technet.com/medv
    The SCVMM Team blog: http://blogs.technet.com/scvmm/

    “This posting is provided "AS IS" with no warranties, and confers no rights. User assumes all risks.”

    Saturday, October 18, 2014 6:01 AM
  • One more thing - you can use apps in a connection group if they are sequenced to the PVAD as long as you don't need the PVADs to merge. If the apps are all installed to separate folders and you don't have a situation where one is installing plugins to a subfolder of another app for example, feel free to use the PVAD!

    Saturday, October 18, 2014 6:05 PM
  • I am going to start a wiki that we can use to keep track of all the apps that we've found that requre the PVAD.  Like Steve I also try to install everything into the VFS first so that everything is consistent, but sometimes we have to resort to the Microsoft best practices...hehe
    Monday, October 20, 2014 1:46 PM
  • Thanks so much for the responses everyone.

    I agree with the recommendation to do VFS install first, with the ability to write to the VFS I really don't see a reason not to. 
    What made this such a hot topic for me was that a LOB app worked 99.9% when installed to the VFS, and had to be in a CG with many other large LOB apps.
    There was 1 function that didn't work, and the only way to fix it (that I could manage) was to capture to PVAD, where it worked right out of the box.
    And once you do something as big as that, you really have to get the business to retest, and do you have them retest all the apps in the entire CG, since there is an interdependence?  I agree if the PVAD directory doesn't need to merge you are good, but in my experience with complicated apps that knowledge goes beyond the function of the guy packaging.  The problem just ballooned and became much bigger then I thought it would.

    Fortunately everything is working(knock on wood!)  I want to try some really in depth procmon'ing to see if I could get to the bottom of it, its become a 'back burner' type of project for me, really just out of curiosity and getting more experienced with App-V.

    Shot in the dark but does the PVAD directory have any better interaction with VC Runtimes?  There has been a common thread of apps I have seen needing to be installed to PVAD and old VC runtimes like MFC42.dll or msvcr71.dll.

    Again thanks for the responses, made my weekened.

    Tuesday, October 21, 2014 7:48 PM
  • OOh...Dude I hadn't thought of that.  I'll bring it up at the summit.
    Tuesday, October 21, 2014 8:47 PM
  • http://www.tmurgent.com/TmBlog/?p=2264

    Tim Magan's list is always waiting for new PVAD candidates.

    Wednesday, October 5, 2016 2:33 PM
  • One of these days I'm going to do some really in depth procmonning to see the low level difference in 1 app that works only 1 way vs the other.
    We just changed our best practice internally to be PVAD capturing vs VFS.  However, I'm not sure PVAD'ing means anything at all if your application spans multiple DIRs.  
    We have had some LOB apps that required it (although most were done before 5.1), so unfortunately I can't add them to Tim's list. 

    Monday, October 17, 2016 8:48 PM
  • You were definitely on to something when you mentioned the VC Runtimes.  Anything that I've done that requires Crystal Reports runtimes have had to be done to PVAD.
    Tuesday, October 25, 2016 7:57 PM
  • Old topic, but about Crystal Reports, I have an application that needs CrystalReports runtime 14.x. The issue in that case was not that I needed PVAD in order to get Crystal Reports to work, but to install it to a shorter path. Because of the translation with all the GUIDs, using Procmon is was clear the pathnames exceeded the 240 character limit. I installed CR with 'CRRuntime_32bit_14_0.msi INSTALLDIR=C:\CRRuntime' and that makes the paths short enough to get it working in my setup.
    Thursday, April 13, 2017 3:19 PM
  • Interesting.  I'll make sure to try that next time.  Thanks for the info!
    Monday, April 17, 2017 4:46 PM
  • I am  sequencing SAS 9.4 , which is having dependency of VC++, which one will be preferable VFS or PVAD method ?

    I am getting error while launching the SAS cost and profitability short-cut ,.. Any help is highly appreciated !

    Thursday, May 24, 2018 5:49 PM
  • I've sequenced lots of SAS components, 9.4 and older which work fine without issues. What's the exact issue you're facing with this shortcut? Maybe start a new topic about it. 

    Roy Essers

    Friday, May 25, 2018 5:51 PM
  • Ikbad, I definitely agree with Roy on a new topic. Generally speaking I try VFS and if it errors one of the things I try is to PVAD it.  Have not had anything recently that required PVAD though.  I don't think its anything to do necessarily with VC run times, but it *seems* some of the old runtimes (like msvcr71.dll) do better when the software is installed to PVAD, but I haven't had problems with apps required newer VC runtimes (I let the sequencer detect and install those).

    Also make sure you are at the newest version of the sequencer and client if at all possible.  MS does not give accurate change logs when they do updates (sorry MS but its true!).

    Friday, May 25, 2018 6:25 PM