• 10Feb

    I found this post on a blog of Sepago. Could be useful when using Dynamic Suiting. Here you can find the original article.

    App-V’s Dynamic Suite Composition is a powerful feature in that it allows multiple “bubbles” to share the same virtual environment. In other words, package A can be made dependent on package B. But if DSC is used extensively, dependencies between packages tend to become difficult to manage – there seems to be no simple way of listing all packages’ dependencies. Well, I have written a PowerShell script that does just that.

    Using Get-AppVPackageDependencies

    Just call the script with the path (UNC or local) to a folder containing packages. The script will recursively search the path given for OSD files and analyze each OSD file for dependencies. Here is some sample output:

    PS D:\> .\Get-AppVPackageDependencies.ps1 .\
    
    ============================================================
    Dependencies found:
    ============================================================
    
    DaveSoft_CopyRite_Vista.CopyRite -> Nvu
    Opera -> Firefox_JRE
    
    ============================================================
    All packages found:
    ============================================================
    
    Name                             GUID
    ----                             ----
    Nvu                              3AAC7EE6-84C4-4021-966B-56C52FF95AAF
    WinDirStat                       3C5E1C59-D56E-4463-B9A0-5190034E6223
    DaveSoft_CopyRite_Vista.CopyRite 4A7697E4-ED02-4D87-A8F0-88D7DEB914DE
    Firefox_JRE                      999E8458-D477-4975-B3C8-3BCE1252B991
    Opera                            24D14B13-1838-45B2-9DAC-78D0A7432F69

    In the example above, the script was located in the same folder as the packages, thus the parameter “.\”.

    Get-AppVPackageDependencies – the Script

    Here is the source code. Let me know if it is useful to you.

    #
    #   Get-AppVPackageDependencies by Helge Klein, sepago GmbH, http://blogs.sepago.de/helge/
    #
    #   Usage:
    #
    #   Get-AppVPackageDependencies <path to folder containing packages>
    #
    
    #Requires -Version 2
    
    param(
       [ValidateNotNullOrEmpty()] 
       [System.String[]] $PackageBasePath
    )
    
    # Initialize a hash table that stores GUID -> name associations
    $Packages = @{}
    
    # Get a list of all .OSD files below the base path passed in
    $SFTFiles   = Get-ChildItem $PackageBasePath -filter *.osd -force -recurse
    
    # Store each OSD file's data (name and GUID)
    foreach ($SFTFile in $SFTFiles)
    {
       # Read the OSD file
       [xml]   $SFTFileXML   = Get-Content $SFTFile.FullName
    
       # Store relevant information
       $PkgName   = $SFTFileXML.SOFTPKG.NAME
       $PkgGUID   = $SFTFileXML.SOFTPKG.IMPLEMENTATION.CODEBASE.GUID
    
       if ($Packages.ContainsKey($PkgGUID) -eq $false)
       {
          $Packages.Add($PkgGUID, $PkgName)
       }
    }
    
    Write-Output "`n============================================================`nDependencies found:`n============================================================`n"
    
    # Process each package's dependencies
    foreach ($SFTFile in $SFTFiles)
    {
       # Read the OSD file
       [xml]   $SFTFileXML   = Get-Content $SFTFile.FullName
    
       $PkgDependencies   = $SFTFileXML.SOFTPKG.IMPLEMENTATION.VIRTUALENV.DEPENDENCIES
    
       foreach ($PkgDependency in $PkgDependencies)
       {
          # Extract package information (again)
          $PkgName   = $SFTFileXML.SOFTPKG.NAME
          $PkgGUID   = $SFTFileXML.SOFTPKG.IMPLEMENTATION.CODEBASE.GUID
    
          # Extract the GUID the package depends on
          $PkgDependencyGUID   = $PkgDependency.CODEBASE.GUID
    
          # Look up the depending package's name
          if ($PkgDependencyGUID -ne $null -and $Packages.ContainsKey($PkgDependencyGUID))
          {
             Write-Output "$PkgName -> $($Packages.Get_Item($PkgDependencyGUID))"
          }
       }
    }
    
    Write-Output "`n============================================================`nAll packages found:`n============================================================"
    Write-Output $Packages | format-table -auto @{Label="Name";Expression={$_.Value}},@{Label="GUID";Expression={$_.Name}}

    Download

    You can also download a digitally signed version of the script here.

  • 05Feb

    After you sequence an application that uses the Microsoft Application Virtualization (App-V) Sequencer version 4.5 or a later version, you have the option of generating a Windows Installer package to publish the application. If you try to publish a Windows Installer package that is located on a network share, you may receive the following error message:

    The Application Virtualization Client could not complete the operation.

    The Application Virtualization Client is operating in disconnected mode and cannot perform the operation requested. Ensure that you can connect to the Application Virtualization Server, and then retry the operation. If the problem persists, report the following error code to your System Administrator.

    Error code: xxxxxx-xxxxxx0A-000001D1

    Additionally, the corresponding Sftlog.txt file contains several additional errors that have a result code (also known as rc) of xxxxxx2A-00000005. Also, the Windows Installer log file contains logs that resemble the following:

    === Logging stopped: date time ===MSI (c) (3C:68) [11:53:01:145]: Note: 1: 1708 MSI (c) (3C:68) [11:53:01:145]: Note: 1: 2262 2: Error 3: -2147287038 MSI (c) (3C:68) [11:53:01:145]: Note: 1: 2262 2: Error 3: -2147287038 MSI (c) (3C:68) [11:53:01:145]: Product: msitest — Installation failed.

    For details on the cause and how to fix this issue please see the following new Knowledge base article:

    KB979598 – Error message when you try to publish a Windows Installer package for a virtual application from a network share to an App-V Client: “xxxxxx-xxxxxx0A-000001D1″

  • 04Dec

    When you upgrade a Microsoft Application Virtualization (also known as App-V) client from Windows Vista to Windows 7, you receive the following error message:

    Program Compatibility Report
    The program is blocked due to compatibility issues.
    Report the problem to see if a solution is available. Windows will automatically display a website with more information about compatibility problems.
    Microsoft Application Virtualization is incompatible with this version of Windows. For more information, contact Microsoft.

    For the details of the issue and the resolution see the following Knowledge Base article:

    KB976248 – Error message when you upgrade an Application Virtualization client from Windows Vista to Windows 7: “Program Compatibility Report”

  • 19Nov

    Microsoft Application Virtualization 4.5 Service Pack 1 (App-V 4.5 SP1) is now available. This service pack provides the latest updates to Microsoft Application Virtualization 4.5. Additionally, it contains the following improvements:

    Support for Windows 7 and Windows Server 2008 R2

    App-V 4.5 SP1 provides support for Windows 7 and Windows Server 2008 R2. This includes support for Windows 7 taskbar, for AppLocker, for BranchCache, and for BitLockerToGo. Windows Server 2008 R2 is supported for only the Application Virtualization Server.

    Support for third-party Kerberos realms

    App-V 4.5 SP1 provides support for environments that have a trust relationship and mapped user accounts between a Windows Domain and an MIT Kerberos realm. For more information about how to enable this support, visit the following Microsoft TechNet Web site:

    Improved support for application publishing and streaming over the HTTP and HTTPS protocols

    App-V 4.5 SP1 provides support for application publishing and streaming over the HTTP and HTTPS protocols for the following operating system editions:

    • Windows XP Home Edition
    • Windows Vista Home Basic
    • Windows Vista Home Premium
    • Windows 7 Home Basic
    • Windows 7 Home Premium

    Customer feedback and hotfix rollup

    App-V 4.5 SP1 also includes a rollup of fixes to address issues that have been found since the App-V 4.5 Cumulative Update 1 release. This rollup addresses known issues and feedback from partners and customers who are using App-V 4.5.

    In addition to some stability improvements, this service pack addresses the following issues:

    • When a virtual application tries to delete a file on drive C, a “file not found” error occurs even though the file is deleted successfully.
    • When you create an MSI package by using the App-V Sequencer, third-party tools may be unable to validate the resulting MSI package.

    For more information, go to KB976338

  • 16Sep

    After running the mini-setup in Sysprep the default profile, you have made, is deleted. The profile from the Administrator is copied over. To fix this problem Microsoft wrote a knowledge-base article which you can find here.

    You need to contact the support-desk for the hot-fix. Here you can find the phone-numbers from Microsoft. Referring to KB article 887816 they will send the hot-fix by email. You can also contact them through the link in the KB article on the support-website from Microsoft.

    Microsoft Knowledge Base – KB887816

   

Recent Comments

  • staat het al ergens bij ons?...
  • Niceeeeeee leuk voor bij beweging voor de laptops...
  • nice tool :)...
  • Hi Sander, Just to add to your great blog, that Extentrix...
  • Great work....