Category Archives: Microsoft

Remove the “Protected Mode” pop-up from Internet Explorer 11 – Win 2012 R2

A published IE application may show the following pop-up when starting a web page:

Such pop-up appears each time, even if you click on the ‘Don’t show this message again’.
The solution is to set the user registry value that prevents this pop-up from appearing (this can be done through GPO, logon script, etc…)
The value is “NoProtectedModeBanner”, DWORD, and must be set to 1.
It must be located under HKCU\Software\Microsoft\Internet Explorer\Main

Microsoft User Experience Virtualization (UE-V) – Beta Version

Microsoft released the beta version of its “advanced profile management” tool called “Microsoft User Experience Virtualization”, UE-V.

UE-V will be included in the future version of Microsoft Desktop Optimization Pack (MDOP) and it will be a valuable (I hope) companion to other technologies such as App-V, MED-V, and hopefully also XenDesktop, XenApp and VMware View.


As per Microsoft’s website:

Microsoft User Experience Virtualization (UE-V) is an enterprise-scale user state virtualization solution that that keeps users’ experience with them. It allows them choice to change their device and keep their experience so that they don’t have to reconfigure applications each time they login to Windows 7 or Windows 8. Regardless if it is a rich desktop or a VDI session, UE-V enables a consistent, personal Windows experience that matches their unique work style.



It will have roughly the same functionalities that other products from RES Software, AppSense, and Citrix already have, such as support of different version of roaming profiles (V1 and V2) and filtering of profiles settings to be synchronized.

UE-V will be also manageable through Microsoft SCCM 2012.


You can get the Beta version here:


I will soon test it and keep you posted.

Acrobat Reader 9 script pop-up removal

Environment:  Windows Server 2003 Service Pack 2, Citrix XenApp 5 Roll Up Pack 7, Citrix User Profile Management 3.2, VMware ESX 4.0.

Problem description: every time an application tries to open, through a script, a pdf file with Acrobat Reader (from version 9 on), a pop-up alert notifies the user of the action. This pop-up can be annoying when multiple pdf files need to be open during a session. The pop-up can be acknowledged and avoided for future uses, but usually users tend to ignore its content and click on “ok”.

Problem cause: the pop-up alert is a security feature introduced by Adobe since Acrobat Reader version 9.

Problem solution: when the “do not show this message again” check box is checked, a new registry key is created into the registry. To discover the key created by the process I used a free tool called “RegFromApp.exe”. The key is:

[HKEY_CURRENT_USER\Software\Adobe\Acrobat Reader

To solve the problem I created an ADM template which I’ve imported and enabled through the GPO management console. The template is the following (please note that it modifies also another registry key: …\9.0\AdobeViewer]”EULA”= dword:00000001, which is useful to avoid the adobe contract to appear each time a new user opens acrobat reader):

;template creato da Sebastiano Ingallo
;per disabilitare il pop-up di alert
;di acrobat reader e la
;visualizzazione del contratto al primo avvio
        POLICY !!DisAlert
            KEYNAME "Software\Adobe\Acrobat Reader\9.0\
           EXPLAIN !!DisAlertExplain
                VALUENAME "iWarnScriptPrintAll"
                    VALUEON NUMERIC 1
                    VALUEOFF NUMERIC 0
        END POLICY
       POLICY !!DonotdisplayEULA
            KEYNAME "Software\Adobe\Acrobat Reader\9.0\AdobeViewer"
           EXPLAIN !!DonotdisplayEULAexplain
                VALUENAME "EULA"
                    VALUEON NUMERIC 1
                    VALUEOFF NUMERIC 0
        END POLICY
Reader="Adobe Reader 9.0"
DisAlert="Disabilita Alert Stampa"
DisAlertExplain="Se abilitato non visualizza l'alert
durante la stampa inziata da uno script"
DonotdisplayEULA="Non visualizzare contratto"
DonotdisplayEULAexplain="Se abilitato non fa
visualizzare il contratto al primo avvio"


PS: comments are written in Italian.




VMware ESX hgfs.dat file causes Terminal Services to duplicate users’ profiles

Environment:  Windows Server 2003 Service Pack 2, Citrix XenApp 5 Roll Up Pack 7, Citrix User Profile Management 3.2, VMware ESX 4.0.

Problem description: in some situation, when using Terminal Server roaming profiles or Citrix UPM, users connecting to a Terminal Server may have their profile duplicated in the form of user.domain.001, user.domain.002, user.domain.003 and so on.

Problem cause: the problem is caused by a bug in the VMware tools “shared folder” feature. Such feature is installed when VMware tools are installed with the “Complete” option. When a user logs off, the Terminal Server tries to copy the hgfs.dat file back to the profiles folder but the operation fails because VMware keeps the file locked with exclusive access. When the user logs in again, a new and duplicated user profile folder is created.

Problem solution: the “shared folder” feature can be disabled by modifying a registry key (the feature is not used by ESX and GSX  Server).

  1. Disable users logons on the server;
  2. When all users are logged off delete the profiles folders in c:\Documents and Settings\;
  3. Open the registry editor: regedit;
  4. Find the following key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider\Order\
  5. Open the “ProviderOrder” key and delete the the words “hgfs” or “vmhgs” or “vmhgfs” present in the string ;
  6. Reboot the server.
Support Articles:

Application written with GUPTA 5.2 and published through XenApp 5 returns “Empty Array” error

System Version: XenApp 5 for Windows 2003 – GUPTA 5.2 Application (ported from GUPTA 4.1)

Problem Summary: after an undefined amount of time the application starts to show pop-ups with the following alert: “Empty Array” and then it becomes unusable. OR The application get stuck and becomes unusable.


Cause: the problem occurs when using applications (through ICA) written with GUPTA version x .x  and then ported to a new version of GUPTA. In my case the application has been ported from GUPTA version 4.1 to GUPTA version 5.2. The problem is caused by the XenApp’s Seamless Engine, in fact, if the application is not published in seamless mode the problem doesn’t occur.

 The XenApp seamless engine sends some messages to the application called “WM_QUERYDRAGICON”, such messages are used to acquire information about icons associated to the application’s window, but, with some GUPTA applications they bring about unexpected results .In this particular case, the sending of this messages causes the GUPTA application to continually create GDI objects (about 4 per second) without removing them, exhausting quickly the memory space given to the application instance.

 The “Empty Array” message is displayed when the number of GDI objects created by the application reaches 9.999. This value is controlled by the following registry key:

[HKEY_LOCAL_MACHINE/Software/Microsoft/Windows NT/CurrentVersion/Windows]“ GDIProcessHandleQuota”dword 10000

In my case I set the value at 20.000 for testing purposes (that’s why the task manager in the picture shows 19.999 GDI objects), but the default value is 10.000, allowing then for 9.999 GDI objects.

Please note: if the application is written in GUPTA 5.2 from scratch the problem doesn’t occur.


Solution: to solve the problem you need to create the following key:

 [HKEY_LOCAL_MACHINE/System/CurrentControlSet/Control/Citrix/wfshell/TWI]”SeamlessFlags”= dword 0x200 hex

Such key prevents XenApp to send WM_QUERYDRAGICON messages.


Support and

XenApp 6 How To: force the ICA listener on one NIC in multihomed installations

Sometimes, if you have your XenApp 6 servers in a multihomed environment, you may need to force the ICA listener to listen on only one NIC. For example it might happen that your web interface returns an ICA.launch which includes the wrong IP address.

The following steps shows how to perform the required configuration:

  • Then you have to set the binding order of your network card, putting the one you want to be associaated with the ICA listener at the bottom of the list, to do so:
      1. Open “Control Panel”
      2. Open “Network and Sharing Center”
      3. Click on “Manage Network Connection”
      4. Press “Alt” on your Keyboard
      5. Click on “Advanced” and then on “Advanced Settings”
      6. Put the connection you want to use at the bottom (XenApp 6 binds in descending order)
  • Open “ICA Listener Configuration”

  • Click on “Edit” –> “Network Adapter” and select the adapter you want
  • Click “OK” and close the console.
  • Restart the IMA service

  • Open a command prompt and run “qfarm”, you will see that your server is not listed along the others (here is explained why: )
  • Open the ICA listener console and put all NIC to listen again
  • Restart the IMA service again
  • Run “qfarm” again, now you’ll see that your server is listed twice and the first row contains the IP of the NIC you chose to use for the ICA listener


How to delete a newly created predefined dhcp option – windows server 2003

OS: Windows Server 2003

Service: DHCP Server

Problem: sometimes you might need to create a predefined dhcp option on your Windows 2003 dhcp server.

and sometimes you might select a wrong data type for your option.

The problem is that when you try to delete the newly created option the delete button is inactive!!!!


Solution: from the command line run the following:

netsh dhcp server \\servername delete optiondef optionnumber


  • servername = name of your server
  • optionnumber = number of the newly created option

Discovering VUEM – VirtuAll User Environment Manager

Written by Pierre Marmignon, a Citrix Professional, VUEM – VirtuAll User Environment Manager is a tool that facilitates management and maintenance of both virtual and physical desktops.

VUEM has been created to complement Citrix User Profile Manager. With VUEM it is now easier to manage network printers and drives, environment variables, registry values, file associations and more without using login script and all from a central console.


VUEM can be used carry out the following tasks:

  • Applications Shortcuts
  • Network Printers
  • Network Drives
  • Virtual Drives
  • Environment variables
  • Registry Values
  • Ports (COM/LPT) Mapping
  • Ini Files Entry
  • External Tasks Execution
  • File / Folder Operations
  • File Associations Management
  • User DSN Creation
  • Fast Logoff (only for virtual desktops)
  • CPU Management
  • Memory Management
  • Processes Management


VUEM’s architecture is pretty simple, it includes:

  • A centralized management console

The Management Console


  • Two types of client, one graphical and one console agent. The console agent executes command line actions and exits after all tasks are executed. The graphical agent executes tasks within a splash screen and then can be accessible through a systray icon; users can refresh settings and manage printers.


UI client systray menu

  • SQL Server Database. Support for versions 2000 to 2008 R2, including Express. The VUEM database model has been validated on environments containing more than 10.000 users.


There are two kinds of license editions:

  • Community License, free, doesn’t include maintenance and support.
  • Subscriber License, has an annual cost, includes a maintenance and support package.

For more info visit the product page at: