Month: January 2014
App-V 5.0 Sequencing Decision Matrix
Below is a potentially helpful decision chart for considerations when choosing to have an App-V package vs. keeping an application native (local install). I had originally created it in October 2013 for my webcast with BDNA. But since that time, an even better flowchart has been created by Rory Monaghan, that I encourage you to visit review on his blog at http://rorymon.com/blog/?p=174.
Criteria |
App-V 5.0 SP2 |
Native Application |
DCOM Objects | Minimal or unused | Critical functionality |
Integration points with other applications | Minimal or if there is not time/resource restraints | If complex or if there are time/resource restraints |
Application installed size | Less than 4 GB | Greater than 4 GB |
Drivers | If drivers are not required at system boot, and have an automated install mechanism. | If drivers are required at system boot, or has complex driver automation |
Application requires updated versions frequently | App-V application when users do not have the ability to update themselves | Native application when users have the ability to update themselves |
Application compatibility fixes necessary | Successful bundling of a shim within the App-V package | Not successful bundling of the shim within App-V package |
Services | Normal services that run in their own process and are not required at system boot | Shared services that run inside svchost.exe or are required at system boot |
Middleware | Middleware application that is only required by other virtualized apps | Middleware application that is required by both native and virtualized apps |
Licensing | Single license can be embedded or added later | Multiple licenses that can only be used at install time |
Vendor support for the application virtualized | If yes or if low risk | If no and risk cannot be taken |
Multiple versions of application to be used | Yes if other App-V have been criteria met | Possible if no conflicts between multiple versions at once |
Conflicts between multiple versions of applications | Yes if other App-V have been criteria met | N/a |
Shell Extensions | Yes if other App-V have been criteria met | When App-V criteria cannot be met |
Compatibility issues with other applications | Yes if other App-V have been criteria met | N/a |
App-V 5.0: Sequencing Visual Studio 2012
The sequencing of Visual Studio 2012 does NOT seem to have been successfully accomplished by many people (at least not online that I can find!). This recipe is a conglomeration of tips, tricks, fixes, and other recipes found on the web. Hopefully it works for you too!
Notice: Visual Studio takes a long time to sequence. At times, it will appear that the sequencer is ‘hung’. In reality, this is normal so DO NOT terminate the window or otherwise start over. Just allow for time (even up to 15 minutes) for the processing to complete. An additional reference for virtualization can be found at http://social.technet.microsoft.com/Forums/en-US/7e93e525-31ed-43fc-8415-88a12766d2c2/how-to-sequence-visual-studio-2012-in-microsoft-application-virtualization-46-sp2
Prerequisites
- Pre-download the most recent Visual Studio 2012 Update
- Save into the source files
- Extract files to a folder in the AppV source files
- Update the CustomSetup.bat to call this
- Ensure VM has at least 45 GB disk
- Download the MVLS edition of VS then copy the installer and all subdirectories to a local folder
- Create an AdminDeployment.xml with SharePoint tools and SQL to not install (such as code snippets below)
<SelectableItemCustomization Id="SharepointTools" Hidden="no" Selected="no"/> <SelectableItemCustomization Id="SQL" Hidden="no" Selected="no" />
- Install Microsoft .NET Framework 4.5 on the Sequencer machine. Using Microsoft Update, install all updates for .NET Framework 4.5
- Install IIS Express 8 (from iisexpress_8_0_RTM_x64_en-US.exe)
- Open an Administrator Command Prompt and run:
- C:\Windows\microsoft.net\framework\v4.0.30319\ngen.exe executeQueuedItems
- C:\Windows\microsoft.net\framework64\v4.0.30319\ngen.exe executeQueuedItems
- On Windows 7, disable the services:
- “Microsoft .NET Framework NGEN v4.0.30319_32”
- “Microsoft .NET Framework NGEN v4.0.30319_64”
- Open Regedit.exe, change the Permissions of the two following registry keys, granting Full Access to the Administrators group
- HKLM\System\CurrentControlSet\Services\DcomLaunch
- HKLM\System\CurrentControlSet\Services\RpcSS
- Restart Windows
- Now is a good time to make a snapshot/checkpoint :-)
Sequencing
CustomSetup.bat will do the following:
- Unattended install of the MVLS copy of Visual Studio 2012 Pro
- Disable prompt to download/install local help files on software first run
- Install help files
"%~dp0vs_professional.exe" /passive /adminfile "%~dp0AdminDeployment.xml" :: Disable prompt to download/install local help files on first run reg add HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\11.0\Help /v DisableFirstRunHelpSelection /t reg_dword /d 1 /f :: Install help files :: Note this is disabled due to space constraints but could potentially be enabled :: "C:\Program Files (x86)\Microsoft Help Viewer\v2.0>hlpctntmgr.exe" /operation install /catalogname VisualStudio11 /locale en-s /sourceuri \\ServerShareWhatever\VS2012Documentation\helpcontentsetup.msha :: Fix for IEXPlorer reg add HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\App Paths\IEXPLORE.EXE /v /T REG_SZ /d """c:\Program Files (x86)\Internet Explorer\IEXPLORE.EXE""" reg add HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\App Paths\IEXPLORE.EXE /v /T REG_SZ /d """c:\Program Files (x86)\Internet Explorer"""
Visual Studio 2012 Professional
C:\Program Files (x86)\Microsoft Visual Studio 11.0
After the install completes, do not close the sequencer, but just restart Windows and login. The sequencer will resume.
Run the latest update that was downloaded as part of the prerequisite steps
After the install completes, do not close the sequencer, but just restart Windows and login. The sequencer will resume.
Locate the Developer Command Prompt and do a Run as Admin
Run regedit.exe
Delete the value of SetupCommandLine in HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\11.0
Done installing
Do not run anything
Stop Now
Locate and delete the following in the VFS
- [{AppVPackageRoot}]\Common7\IDE\Extensions\random.folder\package\services\digital-signature\_rels
- [{AppVPackageRoot}]\Common7\IDE\Extensions\random.folder\_rels
(Optional step, but advisable for Standalone App-V 5.0 Infrastructure)
Add the .NET Framework 4.5, IIS Express 8.0 installers, and custom install.bat script (which just installs both items) into the scripts folder
Now save your package because it’s ready for deployment!!
If you did the optional step above, then edit the saved Deployment.xml file to run a user script for installing IIS Express 8.0 and .NET 4.5 locally
<UserScripts> <PublishPackage> <Path>cmd.exe</Path> <Arguments>/c [{AppVPackageRoot}]\..\Scripts\install.bat</Arguments> <Wait RollbackOnError="true" Timeout="600"/> </PublishPackage> </UserScripts>
Additional Notes
When starting the software for the first time, select to use General Development Settings and to not install local help.
Automating Jive Connects for Office
It’s not well documented on how to deploy Jive Connects for Office (plugin software). Digging into the MSI with Orca, I found the properties necessary for a basic unattended install/configuration.
One of the tricks is that this software is licensed per user, so it really needs to install in the user’s context and only for the user’s profile and not all profiles on the system. The MSI property for this is
MSIINSTALLPERUSER=1
Next, the Office plugin should target the Jive website/service for your organization (see image below). To do this, use MSI property In all, your command line should be as follows
DEFAULTSERVERURL="https://URL.jiveon.com"
So in the end, your command should be:
JiveOfficeInstaller.msi MSIINSTALLPERUSER=1 DEFAULTSERVERURL="https://URL.jiveon.com" /qn
I hope this helps :-)
App-V 5.0 Webcast
This is my second attempt at the App-V webcast. Originally scheduled in late November, I contracted a flu-like sickness on the day of the presentation! Let’s hope that doesn’t happen again!!! ;-)
Registration is now available for my upcoming webcast on BDNA’s Microsoft Master Series. For this webcast, I will cover scripting and PowerShell techniques with App-V 5.0, both when integrated with ConfigMgr 2012 R2 and as standalone App-V infrastructure.
Date: Wednesday, January 29, 2014
Live Presentation: 11am – 12pm PDT | 2pm – 3 pm EDT
Live Q&A with Nick: 12pm – 1 pm PDT | 3pm – 4pm EDT
http://info.bdna.com/2014.01WIndowsMigrationWebinar29thJanLP.html
Ladies and gentlemen, children of all ages…welcome to the great show in application virtualization! During this session we hope to razzle dazzle you with stunning performances, amazing feats, and wild animals…
….Well, maybe there won’t be any wild animals. Microsoft Application Virtualization (App-V) can be more than a mere means of delivering applications to users. Have you ever found yourself saying, “I didn’t know it could do that!”?
In this presentation, Nick will to cover a variety of the cool things that App-V 5.0 can do, such as
- Controlling App-V through PowerShell
- Implementation of additional tasks at deployment time
- Integration between applications
About Speaker: Nick is a 10 year, seasoned professional with all things Configuration Manager and systems management. He is a co-facilitator and presenter for the local System Center user group in Denver. Nick is an active blogger for topics related to ConfigMgr and systems management techniques and has been involved in forums for TechNet and MyITForum.
App-V 5.0 Error: 0xFD01F25-0x7B
In App-V 5.0, if you come across a sequenced application which will not launch because of error 0xFD01F25-0000007B , refer to the following symptoms and steps to resolve. It may not be the guaranteed fix, but it has worked for me as least once and may work for you too!
Process failed to start due to Virtual Filesystem subsystem failure. Package ID {PkgID}. Version ID {VerID }. Error: 0xFD01F25-0x7B
Additional event viewer errors in the Debug Log of Subsystems-VFS
Failed to get long path from ‘\\?\’. Error code: 0xFD01F25-0x7B
Within the VFS, delete every instance of a folder with just a desktop.ini file in it, and also delete and anything that is a “Library”.
Windows Server 2012 R2 – IIS6 install state
In troubleshooting some ConfigMgr 2012 R2 web service point configuration problems in my home environment, I was having real problems trying to locate the install status of IIS6 Metabase and Compatibility components within the Server Manager GUI. Ultimately I turned to PowerShell to get the answer I needed.
Import-Module servermanager Get-WindowsFeature -Name *metabase* Get-WindowsFeature -Name *compat*
(in fact, I’m still trying to find this information in the GUI for server manager! thank you PowerShell!!)
SCCM 2007 Install Software failed, hr=0x80048bc7
0x80048bc7 was a new error code to me that I had not seen previously, nor could I find any results on the web. In this particular instance, it was an exit code generated by Visual Studio 2012 setup. Very little information was logged in ConfigMgr and there was absolutely nothing in Events. As it turned out, the error was generated due to not enough disk space for the software installation.
(Side note: You may wonder how there could ever be a problem with disk space these days – this particular situation was a VDI instance with a disk capped at 32 GB, which was quickly eaten up by other applications)