Citrix user registry settings

Author
Discussion

pdV6

Original Poster:

16,442 posts

262 months

Monday 14th March 2005
quotequote all
OK, I know very little about Citrix but have several customers who deploy my applications using it.

Presumably each Citrix user gets their own set of reg settings (KKCU) when logged in. Is there an easy way to manipulate each user's reg settings centrally, e.g. a management tool running on the Citrix server?

TIA

Plotloss

67,280 posts

271 months

Monday 14th March 2005
quotequote all
How do you mean manage centrally?

Yep each user gets a HKCU in the registry. In my applications they interact with the registry directly as within citrix the only user each user can see is themselves.

What are you looking to do, if you can say?

pdV6

Original Poster:

16,442 posts

262 months

Monday 14th March 2005
quotequote all
I have a guy on site who also knows next to nothing about Citrix trying to fix a problem whereby some users' reg settings for our app are either missing or incorrect.

The way they have their client PCs configured, the users don't get access to a Citrix-supplied desktop, so I can't get at the registry via regedit from a cleint machine.

Therefore was hoping there was some kind of management tool on the server that would allow us to fiddle with each user's HKCU to fix the problems.

Plotloss

67,280 posts

271 months

Monday 14th March 2005
quotequote all
So they arent running ICA client on the PC but sharing a registry over the network?

Almost like running Windows as an ICA 'shell'?

I'll have a word with our friendly Citrix admin...

pdV6

Original Poster:

16,442 posts

262 months

Monday 14th March 2005
quotequote all
Er, pass. As I said, Citrix is a bit of an unknown to me!

However, I think ICA was mentioned on the 'phone earlier. Would that mean the user's reg settings would be stored on the client somewhere?

Plotloss

67,280 posts

271 months

Monday 14th March 2005
quotequote all
The ICA client is a windows 'Thin Client' so when you execute the ICA client you get a desktop served remotely. Exactly the same as Remote Desktop Connection in XP (exactly the same in fact Citrix is identical to Windows Terminal Server apart from some utils and the name)

Does the application write to the registry on launch or similar? I am thinking it maybe a security issue...

pdV6

Original Poster:

16,442 posts

262 months

Monday 14th March 2005
quotequote all
Plotloss said:
Does the application write to the registry on launch or similar?

Nope - reads only.

The issue has arisen because this particular app doesn't yet have a proper install program (its on my to-do list, way down the list of priorities! ), so the reg settings aren't taken care of at "install" time.

Basically, I don't really know how the customer has set it up, other than to say some users are ok and others are not. The errors logged by the app suggest that its using "sensible" defaults in the absence of registry settings to tell it otherwise. Needless to say that on this site the defaults are anything but sensible!

According to my man on the spot, users have a "normal" Windows desktop (rather than a remote one) with a shortcut to our app. On clicking the shortcut, you see a W2k splash screen (presumably as Citrix does its thing) and then you're in the app. Not having seen it with my own eyes, I can't elaborate any further than that.

Plotloss

67,280 posts

271 months

Monday 14th March 2005
quotequote all
Now I wonder if the icon as clicked starts an ICA session passing the program (your program) as an argument.

I dont see though how the registry settings are getting done if they arent being done manually and if they arent being done manually how its your softwares fault.

If you see what I mean...

pdV6

Original Poster:

16,442 posts

262 months

Monday 14th March 2005
quotequote all
Plotloss said:
Now I wonder if the icon as clicked starts an ICA session passing the program (your program) as an argument.

Sounds likely
Plotloss said:

I dont see though how the registry settings are getting done if they arent being done manually

Indeed! I'm guessing that somebody who knows what they're doing set up a few users and the rest are having problems!
Plotloss said:

if they arent being done manually how its your softwares fault.

If you see what I mean...

Again: indeed!

Just need to get the settings in place ASAP and was hoping somebody might know how!

Cheers for your help & insights, though.

_DeeJay_

4,898 posts

255 months

Monday 14th March 2005
quotequote all
pdV6 said:
OK, I know very little about Citrix but have several customers who deploy my applications using it.

Presumably each Citrix user gets their own set of reg settings (KKCU) when logged in. Is there an easy way to manipulate each user's reg settings centrally, e.g. a management tool running on the Citrix server?

TIA



Usually you use application compatibility scripts to customise the settings for each user (see www.thethin.net/acs.cfm). and http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwts/html/AppCompSc.asp

If all you're trying to do is modify the registry on each user account then why not use a policy?


Darren

>> Edited by _DeeJay_ on Monday 14th March 13:19

malman

2,258 posts

260 months

Monday 14th March 2005
quotequote all
I'll prefix this with I haven't used citrix since it was based on NT3.51 so I could be talking complete bollox

If you logon to the server as admin with a remote desktop session or indeed locally on the console you should be able to use regedit. Once you have regedit I believe the users will show up like ony other user that has logged onto the server locally in HKEY_USERS.

OR

Or logon as a user using the client but don't pass the application. You should get a desktop use it to import a .reg file

pdV6

Original Poster:

16,442 posts

262 months

Monday 14th March 2005
quotequote all
Blimey - that's all a bit double-dutch to me. As I say, I know next to nothing about Citrix / TS and was just hoping there'd be an easy way to mod a user's reg settings!

_DeeJay_

4,898 posts

255 months

Monday 14th March 2005
quotequote all
pdV6 said:
Blimey - that's all a bit double-dutch to me. As I say, I know next to nothing about Citrix / TS and was just hoping there'd be an easy way to mod a user's reg settings!


OK, just so I understand, do you:

1) Want to modify a particular user's settings on a particular server

or

2) Modify a set of multiple users across multiple servers and have the same settings apply to new users?

D

pdV6

Original Poster:

16,442 posts

262 months

Monday 14th March 2005
quotequote all
_DeeJay_ said:

OK, just so I understand, do you:

1) Want to modify a particular user's settings on a particular server

or

2) Modify a set of multiple users across multiple servers and have the same settings apply to new users?

D

"1" would do me for now, although "2" might be a better long term solution!

_DeeJay_

4,898 posts

255 months

Monday 14th March 2005
quotequote all
pdV6 said:

_DeeJay_ said:

OK, just so I understand, do you:

1) Want to modify a particular user's settings on a particular server

or

2) Modify a set of multiple users across multiple servers and have the same settings apply to new users?

D


"1" would do me for now, although "2" might be a better long term solution!


OK, well (1) should be relatively easy.
Forgot Citrix altogether. All that's happening is either:

1) You're running a desktop for a user who is running your app

2) You're running a published application (think of this as if the user's shell is set to be the application, rather than explorer.exe)

So, when the user logs in, all that happens is they get a HKLM hive which stores their registry settings (and Citrix loads a load of these at once but you don't need to worry about that).

The easiest way to modify that hive is to:

1) Have the user log into the Citrix Server
2) Login to the Citrix server as a local admin
3) Access HKEY_LOCAL_USERS/user's GUID
4) Change the settings you want in the registry

Failing that, you could modify your application to allow those registry settings to be manipulated from with the application (which would be better long term).

To solve (2) the normal way, you'd configure a logon script which sets the registry values for you (easy in VBScript if you're using Windows 200x).

pdV6

Original Poster:

16,442 posts

262 months

Monday 14th March 2005
quotequote all
_DeeJay_ said:

The easiest way to modify that hive is to:

1) Have the user log into the Citrix Server
2) Login to the Citrix server as a local admin
3) Access HKEY_LOCAL_USERS/user's GUID
4) Change the settings you want in the registry

Cheers Darren - that sounds like what we'll have to do, as:
_DeeJay_ said:

Failing that, you could modify your application to allow those registry settings to be manipulated from with the application

...is a non-starter given the nature of the application (and the users! )

Thanks for your help.

_DeeJay_

4,898 posts

255 months

Monday 14th March 2005
quotequote all
pdV6 said:

_DeeJay_ said:

The easiest way to modify that hive is to:

1) Have the user log into the Citrix Server
2) Login to the Citrix server as a local admin
3) Access HKEY_LOCAL_USERS/user's GUID
4) Change the settings you want in the registry


Cheers Darren - that sounds like what we'll have to do, as:

_DeeJay_ said:

Failing that, you could modify your application to allow those registry settings to be manipulated from with the application


...is a non-starter given the nature of the application (and the users! )

Thanks for your help.


IF you need to do this when the user is not logged in you can also do it this way:

1) Login to the citrix box as an admin
2) Load regedt32
3) Select HKEY_LOCAL_USERS
4) Click registry -> load hive and select ntuser.dat from c:documents and settings\%username%
5) Call it anything (temp for example)
6) Make the changes to the registry info
7) Unload the hive

Which effectively does what Windows does when a user logs in.

Good luck!!

D

pdV6

Original Poster:

16,442 posts

262 months

Monday 14th March 2005
quotequote all
_DeeJay_ said:

IF you need to do this when the user is not logged in you can also do it this way:

1) Login to the citrix box as an admin
2) Load regedt32
3) Select HKEY_LOCAL_USERS
4) Click registry -> load hive and select ntuser.dat from c:documents and settings\%username%
5) Call it anything (temp for example)
6) Make the changes to the registry info
7) Unload the hive

Which effectively does what Windows does when a user logs in.

Good luck!!

D


Even better. Cheers.