Remko Weijnen's Blog (Remko's Blog)

About Virtualization, VDI, SBC, Application Compatibility and anything else I feel like


Today I was tested my unattended Citrix installation (XenApp 5 on Windows 2003) and I noticed that the install was taking longer than expected.

This was because of a popup:


I am not sure if this popup is shown because I ran MsiExec with /Qb- (I usually do that when testing) but if the Popup is not shown it means that at least the installation of this driver (probably Citrix Universal Print driver) fails.

So this means I needed to script turning off Driver Signature Warnings. A quick search led me to kb article kb298503 which is titled “Driver signing registry values cannot be modified directly in Windows“. As you may guess that title drew my attention. Read the rest of this entry »


I was creating an unattended Exchange 2007 install job today and while testing it, it failed with the following error:

Active Directory operation failed on nl-dc001.MYDOMAIN.LAN. The object ‘CN=Default Global Address List,CN=All Global Address Lists,CN=Address Lists Container,CN=My Organisation,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=MYDOMAIN,DC=LOCAL’ already exists

I opened the Exchange System Manager and expanded the Tree (Recipient | All Address Lists | All Global Address Lists) and I found 2 Global Address Lists but not the Default Global Address List:


Read the rest of this entry »


VMware has released an updated Performance Best Practices for VMware vSphere document for 4.1.

The document provides tips that help administrators maximize the performance of VMware vSphere 4.1.

Chapter 1 – “Hardware for Use with VMware vSphere,” provides guidance on selecting hardware for use with vSphere.

Chapter 2 – “ESX and Virtual Machines,” provides guidance regarding VMware ESX™ software and the virtual machines that run in it.

Chapter 3 – “Guest Operating Systems,” provides guidance regarding the guest operating systems running in vSphere virtual machines.

Chapter 4 – “Virtual Infrastructure Management,” provides guidance regarding resource management best practices.

Links: Technical Resource Center (direct link to the Document).

Earlier versions:

Performance Best Practices for VMWare vSphere 4.0

Performance Tuning Best Practices for ESX Server 3

  • Filed under: VMWare

    After deploying Virtual Machines from a template and adding disks the next Task was to create and format the partitions.

    In a VMWare environment it is very important to assure that the partitions are aligned. VMWare has a nice document that explains the details called Performance Best Practices for VMware vSphere 4.0.

    Basically the recommendation is to align partition on a 64 KB boundary, not only for VMWare itsself but also for the guests.

    Of course we could do this manually but I wanted to run this task of from my Deployment Server to automate the following:

    • Create aligned partitions on all extra disks of the maximum size
    • Format, assign drive letter and assign a label
    • A safeguard to prevent overwriting existing Data

    Well enough talk let’s go the scripts! They are written as bat files that can be executed directly in Altiris as an embedded script but of course you don’t need Altiris to use them. Read the rest of this entry »

  • 1 Comment
  • Filed under: Altiris, VMWare

    I have had to activate Altiris Licenses a lot in the past and this is a task that could be done in a few minutes however in the case of using the HP branded version (HP Insight Server control, previously named HP Rapid Deployment Pack) it’s not.

    This is because HP delivers a seperate license for each server which you have to load manually. An annoying thing if you have a lot of them.

    I was already looking if I could automate this with some kind of script since I know from the past that the Product Licensing Utility embeds the license into the Express.exe file.

    Read the rest of this entry »

  • Filed under: Altiris

    As I wrote earlier today I am provisioning Virtual Machines with PowerCLI. I don’t know if this is intentional behaviour but after Deploying (Cloning) a Virtual Machine from a template the Network Adapter is not automatically connected at power on.

    This made the Join Domain operation which is party of the Customization Specification to fail. I noticed this in the log file which can be found in %WINDIR%\Temp\vmware-imc\guestcust.log:

    Joining domain mydomain using account mydomain\myaccount and password ‘*****’
    The specified domain either does not exist or could not be contacted.

    So I wrote a small fix script in PowerCLI:

    And of course I changed the Provisioning script to do this as well 😀

  • Filed under: VMWare

    I am currently provisioning a lot of Virtual Machines in VMWare vSphere 4.1. Because I had already sized the Virtual Machines I am doing this from PowerCLI based on my Excel Sheet.

    I will probably blog later about the details of how I am doing this in PowerCLI (would you be interested in that?) but after successfully deploying some Windows 2008 VM’s I got this error in PowerShell:

    New-VM : 3-11-2010 10:00:50 New-VM The operation for the entity VirtualMachine-vm-150 failed with the following message: “Cannot complete customization.”

    At C:\Users\Administrator\Documents\NewVm.ps1:64 char:14

    + $VM = New-VM <<<< -Name $Name -VMHost $VMHost -Template $Template -OSCustomizationSpec $Spec -DiskStorageFormat $DiskFormat -Datastore $LargestDataStore

    + CategoryInfo : NotSpecified: (:) [New-VM], CustomizationFault

    + FullyQualifiedErrorId : Client20_TaskServiceImpl_CheckServerSideTaskUpdates_OperationFailed,VMware.VimAutomation.ViCore.Cmdlets.Commands.NewVM

    In the vCenter console the following error was logged:

    Cannot deploy template: Cannot complete customization.

    Read the rest of this entry »

  • Filed under: VMWare

    Today I connected with my laptop to VMWare Virtual Center using vSphere client. Because I had an older version of the client I needed to update and the installer failed with this message:

    The Microsoft Visual J# 2.0 Second Edition installer returned the error code '4113'

    I remembered this error from the last install of this client (about a year ago), it happens because Microsoft Visual J# was already installed (in my case it was previously installed by Embarcadero’s Rad Studio).

    Last year I “fixed” it by modifying the msi file but I remembered that Assarbad posted an easier solution on his Blog a while ago.

    His solution was to set a public property in the MSI (USING_VIM_INSTALLER) but it means we need to unpack the installer exe first to obtain the MSI file.
    Read the rest of this entry »

  • Filed under: Delphi, VMWare

    I was trying to install HP Insight Control server deployment (previously called HP Rapid Deployment Pack) on Sql Server 2008 Express. I will just call it Deployment Server or DS from here.

    I first installed SQL 2008 Express with Advanced Services and configured it to listen op Port 1433 as required by DS.

    The installation of the first part (Deployment Server version 6.9.4) indicated a successfull install but the prereqisuites check of the Hotfix version 2.0 installer failed on the last step:

    No Attached Consoles HP Deployment Server

    This was strange because I didn’t yet startup the console, so I decided to start it and close it as this would perhaps allow me to continue.

    The next screen was a clear indication something went wrong:

    Altiris Deploymeny Server Unable to Connect

    I presumed that the ODBC connection was missing so I went to Adminstrative Tools | Data Sources (ODBC). But the ODBC connection was present. I then fired up SQL Server Management Studio which showed me the eXpress database was missing.
    Read the rest of this entry »


    When you request Shadow (Remote Control) of a Remote Desktop (Terminal Server) or Citrix session the user gets a Dialog where he can Accept or Deny the Shadow Request.

    It looks something like this:


    It’s possible to change the default settings and remove the need for this permission but I think this is a bad idea since it violates the user’s privacy.

    But sometimes it would be convenient to automatically accept, for instance for when a user is away or when you want to shadow a session that is “yours” but runs under another account.

    I wrote a tool to do just that 😀
    Read the rest of this entry »