Showing posts from 2013

Citrix Hooks - Troubleshooting

Citrix Hooks - Troubleshooting After clicking on a link via published Internet Explorer that opens a streamed VNC session through an ActiveX control, VNC does not displayThis morning, one of my clients upgraded their internal site that allows users VNC access to the point of sale computers. They were able to log in, but unable to launch VNC. You could see that the vnc session was opened, but to the users, they could not see the window at all. They were getting to the internal site via published IE8 in a XA6 environment.

First thing was to see if it was a hook that was causing the issue. To disable all hooks, you will need to have the following registry "DWORD" in place [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWI\" "SeamlessFlags"=dword:00e6dea7

Now after killing all my sessions and then launching IE, the second VNC window opens. This tells me there is an issue with one of the hooks. Until I found out there was a GUI that sets the hooks …

VM - SYSPREP Failure!

VM - Sysprep Failure Sysprep: Fatal error occurred while trying to sysprep the machineWhile trying to sysprep a machine this morning I ran into an issue with running sysprep. Below is the process I was going through. I would open a command prompt and run sysprep  I would then run sysprep with OOBE  
Every time I was getting the same error
Sysprep - Fatal error occurred while trying to sysprep the machine

So the first thing I checked was the "Remaining Windows Activation Count" via "slmgr /div". It looks like I have 3 more activations remaining.

The next thing was to check the "GeneralizationState" Registry Entry. If it is not already set to 7, change it to 7. HKEY_LOCAL_MACHINE\SYSTEM\Setup\Status\SysprepStatus

After changing the "GeneralizationState" DWORD to 7, sysprep is now working!

Citrix - Protocol Driver Error

Error: Cannot connect to the Citrix server. Protocol Driver Error This morning I got reports form my Service Desk that users were receiving a protocol driver error.

The environment is a Presentation Server 4 environment with four servers. After completing all my basic troubleshooting, I tried telnet'ing to my servers over ICA, and noticed two of my servers (CTX01 and CTX02) were not accepting connections on port 1494 (You can test to see if ICA is opened from a windows machine, by using "netstat -ano | findstr "1494""). Also, multiple restarts of the servers did not help the situation.

Before trying to recreate the ICA listener to get ICA opened up and working, I decided to try something different. I disabled and then re-enabled the ICA listener on the two servers and "Wa-Lah"! It Worked! This option is so much easier than having to delete and recreate the ICA Listener and all the security settings attached to it.

Below are some additional things you…

Citrix PVS - Encountered an improper argument

While reverse imaging a vDisk it errors with "Encountered an improper argument"

While trying to reverse image a vDisk, the conversion from volume (C:\) to volume (G:\), failed halfway through with the error, "Encountered an improper argument"

You see the error when you open the XenConvert Log. You can locate the XenConvert log in:
C:\Program Files\Citrix\XenConvert\XenConvert.txt So what does this error mean? It means that XenConvert does not like one (or more) of your directory names or naming convention. Chances are, you have a directories that are two long. To see which directories have issues, you can use an application called "Long File Path Lister" application is very easy to use. Just download it and click the "Search" button.

Below, you can see that I have an issue with:
C:\Program Files (x86)\SAP BusinessObjects\InstallData\InstallCache\

So what now? You can exclude …

NetScaler - N2N Files

NetScaler to NetScaler File Transfers

So you want to transfer over either an SSL cert or config file to another NetScaler. There are many ways to do this, but in this scenario, I will be using the command "scp" form the NetScaler


NetScaler AVersion 10.0Hostname: nsvpx_aIP: nsrootPassword: toorNetScaler BVersion 10.0Hostname: nsvpx_bIP: nsrootPassword: toorSCP Usage
scp [[user@]from-host:]source-file [[user@]to-host:][destination-file] SCP Optionsr = recursively copy entire directoriesp = preserves modification times, access times, and modes from the original fileC = compression enableq = Do not display the progress barv = Displays debugging messages SCP Examples
Copying NS.CONF I want to copy the ns.conf file from nsvpx_a to nsvpx_b scp -rpC /nsconfig/ns.conf nsroot@ all *.CONF Files I want to copy all the ".conf files" from nsvpx_a to nsvpx_b scp -rcP /nsconfig/*.conf nsroot@ all SS…

PowerShell - Show VMWARE VM UUID

How to show the VMWARE UUID of a VM using PowerShell

I am working on a project where one of the functions is to get the UUID of a VM from the guest vm via PowerShell. You can get the "Windows" UUID with:

(Get-WmiObject Win32_ComputerSystemProduct).UUIDThe problem is that a lot of the values are reversed. Below are examples of a Windows UUID and a VMWARE UUID. Windows UUIDF8420542-10A9-9961-5225-C6F8D91A468DVMWARE UUID420542f8-a910-6199-5225-c6f8d91a468dSo i needed to figure out a way to move the variables around. To do this, I used ".substring" with delimiters to extract out each value, and then piece it back together. I am not a PowerShell expert in any means, so if you think there is a better way to accomplish any of what I am doing, there probably is.  NOTE: There is another way of doing this with "vSphere PowerCLI" and Get-VM commands. I did not want to go that route, because I did not want to download or install anything to accomplish my task. I wanted t…

Citrix PVS - Error: vDisk is not available

So I got to work this morning with the intention of reverse imaging a couple vDisks. Usually a simple process, but today I am having nothing but issues. Luckily it is the same issue on each of the vDisks. So here is a quick synopsis of how I am reverse imaging:Add a Secondary Disk to my VMUse Xenconvert to copy my "c:\" volume to the new vmdk I attachedSet the new drive to "active" and reboot to the biosSet the VM to boot off the HDBoot the VMRemove VMWARE ToolsRemove Target Device SoftwareRebootAdd VMWARE Tools (Now upgraded)Add Target Device Software (Now upgraded)Run through PVS Wizard and "Optimize"Reboot to Bios and set boot order to PXE firstLet the PVS Imaging Wizard complete after logging inSo now for the issue.. At this point, instead of the wizard taking over and completing the process it gives me a very vague error message. To me it doesn't really tell me anything.Error: vDisk is not available. Please check your network PXE boot Configurati…

XenApp - Install and Publish SQL Server Management Studio

Citrix XenApp SQL Server Management Studio Installation
Versions I am working with: OS: Server 2008 R2 Standard 64-bitCitrix: XenApp 6.5SQL: SQL Server 2008 R2 Management Studio Below was the error I was receiving when trying to install SSMS: “Another version of Microsoft Visual Studio 2008 has been detected on this system that must be updated to SP1. Please update all Visual Studio 2008 installations to SP1 level, by visiting Microsoft update.”

First off, "DO NOT REMOVE CITRIX". That is not a required step. Even if you saw that on some Citrix forum. You just need to install Visual Studio and Visual Studio SP1. To accomplish this:Install Visual StudioE:\1033_ENU_LP\x64\Setup\vs_shell.msi Install Visual Studio SP1E:\1033_ENU_LP\x64\Setup\VS90sp1-KB945140.msp
SQL Server Management Studio will now install without any issues. If you want to publish it via Citrix just point you app towards: "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe"…


How to shrink your Winsxs directory

If I had a nickel for every time I had a drive space issue due to the "Winsxs" directory.... I'd probably only have 50 cents. Right now I have a 14GB Winsxs Directory ( c:\windows\winsxs ) and need to do something with it. To fix the issue on your server, open up a command prompt as adminiistrator, and run the following command:

dism /online /cleanup-image /spsupersededThat will take some time depending on the size of it. I just went from 14GB to 7.7GB, and it took about 2-3 minutes to run. I am thinking it may be a good idea to just create a start up script with the dism command in it to automate this on reboots. On my PVS'd servers, I am just going to  setup a personality string to remove the winsxs directory on boot if the server is in standard mode.

Microsoft - Gpresult ERROR Access Denied

Running GPRESULT results in "Error: Access Denied"

Today on one of my Citrix Servers I was presented with an error when troubleshooting a GPO. I opened up my command prompt with "Run As Administrator", and received "Error: Access Denied".

So what now? You already are logged into the server with domain admin credentials, and opening command prompt as administrator doesn't work. You could disable UAC and see if that works, but chances are you will have to register the userenv.dll file again, and recompiling the scersop.mof file.

Below are the steps to correct the issue:
Register the userenv.dll fileregsvr32 /n /I c:\windows\system32\userenv.dll  Change Directory to the wbem folder (required step, don't be lazy)cd c:\windows\system32\wbemRecompile the scersop.mof mofcomp scersop.mofOptional Repositories you can recompile (Probably don't need to) mofcomp rsop.mofmofcomp rsop.mfl
Force Group Policy Updategpupdate /force

After that, run "gpresult"…

Citrix NSVPX - Load Balancing LDAP Authentication

NetScaler - Load Balancing LDAP AuthenticationYou're setting up a new AGEE on your NetScaler Appliance, and when you go to put in an authentication server, it only allows you to put in one. Why not load balance your ldap requests so that you don't have a single point of failure. 
Things you need, to load balance your ldap requests: 2 load balanced servers2 load balanced services1 load balanced vserver1 authentication policy1 authentication serverSetting up load balanced servers Highlight "Load Balancing" > Servers Click on "Add" at the bottom of the right pane Create a connection to your first domain controllerServer Name: lb_server_demodc100IP: "Create"
Create a connection to your second domain controllerServer Name: lb_server_demodc101IP: "Create" You should now see a green circle, and the word "Enabled" next to your ldap services 

Setting up Load Balanced Services Highlight "Load Balancing" &g…