• 06May

    Microsoft’s Support Engineer Steve Bucci recently posted this great video that shows you how to collect the logs and information from your App-V environment. With almost any App-V support call we will ask you for this information but knowing where to find these logs will prove invaluable when troubleshooting any issue you might run into.

    Get Microsoft Silverlight

    We also have some additional information on the App-V log files here:

    Troubleshooting App-V with log files

    KB931803 – Log options for SoftGrid Client 4.x

    KB930871 – How to interpret the messages in the SoftGrid Virtual Application Server log

  • 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.

  • 03Feb

    The following Citrix support whitepaper provides you with details about generating usage reports using the License Management Console. It is one of a series of whitepapers designed to provide you with more detailed information for tasks that extend beyond the scope of installing your licensing components and is designed to complement the Getting Started with Citrix Licensing Guide.

    For more information please refer to the following Citrix support article, CTX108654 – Licensing: Generating Usage Reports Using the License Management Console

  • 02Feb

    Just Zarb wrote a nice approach when an organization is starting on virtualizing their application portfolio.

    The first step in such a project is to identify which applications are installed and used in your environment. If your application delivery method currently consists of automating applications you probably have a good insight in this information. Software distribution mechanisms (like Microsoft System Center Configuration Manager) usually provide great reports for this particular scenario.

    If you don’t have an ESD in your environment you might want to look at the freely available Microsoft Application Compatibility Toolkit, which has some basic inventory functionality as well.

    Now having software installed on your enterprise workstations doesn’t mean that the application is mandatory for the end-user or the organization. More than once when I support customers in this particular process, application reduction is one of the most time consuming activities. Mostly due to political discussions.

    Once you know which applications need to be deployed throughout your organization you should find out if there are good virtualization candidates.

    Microsoft evaluates the potential candidate and places the application into one of three categories:

    • Ideal Candidate. Applications meet all of the possible candidate criteria and have no identifiable roadblocks to success.
    • Possible Candidate. Applications do not meet disqualifying criteria but may require additional research or validation.
    • Not a Candidate. Applications are more expensive to virtualize than the benefits achieved from virtualization. This category also includes applications that technically cannot be virtualized because of current limitations.

    Remember that virtualization candidates are not only based on technical limitations of the application virtualization product you are using. Sometimes functional restrictions can weigh just as much.

    Original article here.
    Microsoft case study here.

  • 02Feb

    Just a quick heads up on an App-V KB article we updated last week.  This one describes how to publish an App-V-enabled application in Citrix XenApp:

    To publish an App-V-enabled application in Citrix XenApp, follow these steps:

    1. Publish Sfttray.exe or publish Sftrun.exe.
    2. Publish the .OSD file.
    3. Publish the application name followed by a percent sign and then an asterisk (%*) or publish the application name and version followed by a percent sign and then an asterisk.

    To continue reading and see all the details check out the Knowledge Base article below:

    KB931576 – How to publish an App-V-enabled application in Citrix XenApp

  • 12Nov

    To add printers per user during the logon you need to add logon scripts to the computer. You can deploy scripts through the Active Directory policies or by creating a local policy per computer. To create a manageable environment it is the best to attach the script to a policy. By applying the policy to a Organisational Unit you can roll-out the script on the objects in the Organisational Unit. Logon- and Logoffscripts can be applied to Users and Startup- and Shutdownscripts can be applied to Computers.

    For adding logon scripts to a policy in Active Directory:

    By opening the Group Policy Object Editor and expanding Windows Settings under User Configuration. Select Scripts and you will see this screen:

    Dubbelclick on Logon and click the Show Files (1) button in the next screen. You can easily copy and paste your script into this folder. The location where the logon script will be stored is %SystemRoot%\SYSVOL\sysvol\<DOMAIN>\Policies\<GUID>\USER\Scripts\Logon. Now click on Add (2) and the next screen will appear.

    By clicking on the Browse button you can select the script you just pasted in the scripts folder.

  • 17Sep

    When you want to prevent users to shutdown the computer from the login-screen you need to change some settings in the registry. This is a part of Windows where everything is set into keys and values. By changing wrong things, the system can be damaged. So please be careful whit changing things. This article is about changing options in the login-screen, so it would not have effect on the rest of the system.

    1. Go to Start, Run and type ‘regedit’.
    2. Select HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system 
    3. On the right side of the screen you will see the key ‘shutdownwithoutlogon’. This will grey out the shutdown-button on the logon-screen.
  • 17Sep

    In some cases it is useful to remove Shutdown from the start-menu. In case of a computer in a locked cabinet or a computer which is hided in a rack, you can remove Shutdown from the start-menu.

    1. Go to Start, Run and type ‘secpol.msc’.
    2. Choose User Rights Assignment on the left side of the screen.
    3. On the right side of the screen you will find Shut down the system.
    4. When you open the options from that setting you can add users or groups and also remove them. By removing the Users group, normal (domain)users are not able to shut down the PC from the Start-menu.
  • 17Sep

    When you want to clear the last username from the username box in the login-screen you need to change some settings in the registry. This is a part of Windows where everything is set into keys and values. By changing wrong things, the system can be damaged. So please be careful whit changing things. This article is about changing options in the login-screen, so it would not have effect on the rest of the system.

    1. Go to Start, Run and type ‘regedit’.
    2. Select HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system 
    3. On the right side of the screen you will see the key ‘dontdisplaylastusername’. This will clear the last username from the logon-screen.
  • 16Sep

    To create a nice looking profile for every new user there is a Default profile. Every user related setting will be saved into that profile. For example the start-menu, background and the Quick Launch bar will be stored in the Default profile and will be loaded when a new user logs in. To create the Default profile do the following:

    1. Log on to the computer as the administrator, and then create a local user account. 
    2. Log off as the administrator, and then log on to the computer through the local user account that you just created. 
    3. Customize the profile appropriately. For example, install printers and map necessary drives. 
    4. Log off as the local user, and then log back on as the administrator. 
    5. Because several of the files in the profile are hidden and must be copied into the new custom default user profile, turn on the Show hidden files and folders option:
      1. Double-click My Computer, click Tools, and then click Folder Options.
      2. On the View tab, under Advanced settings, click Show hidden files and folders, and then click OK.
    6. Replace the current default user profile with the customized default user profile:a. Click Start, point to Settings, and then click Control Panel.
      1. Double-click System.
      2. On the User Profiles tab, click the user profile that you just created, and then click Copy To. 
      3. In the Copy To dialog box, under Copy profile to, click Browse, click the “%systemdrive%\Documents and Settings\Default User” folder, and then click OK. 
      4. Under Permitted to use, click Change, click Everyone, and then click OK.

    Note that permissions issues will result if the custom user profile is created when you log on as an administrator.

« Previous Entries   

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....