Click here to Skip to main content
15,911,531 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hello Everyone!

I have a really big problem. An Application has to be run on a Citrix Seamless system (but Problem exists on every roaming infrastructure).

The Application is installed on many Servers independently. Every user gets a random Server from those "server-cloud". In the installed Application the .NetFramework-Settings-Objects are used, for LocalUserConfigurations.

So, because on each of the servers the 'user.config-Folder-Hash' is different, every user looses his User-Configurations, despite the fact, that we save the Settings on LogOff and write them back, because the new "Hash-Folder", for the new random server, is created after closing the Application, & the config is in the Folder for the last Server.

So i had the idea to calculate this SHA1-Hash (if the Hash is really SHA1) before the start and copy the backuped settings into this folder as a workaround.
But i could not found, of what, despite the *.exe Path, the Hash is made of.

Does anyone know, how to calculate this Hash???

Any answears would be a REALLY BIG help.

Or does someone have any other idea to resolve this problem??? Changing the App with a self written SettingsProvider is not a solution for the next months, but i need a solution for now...

Thanx in advance
Posted

Try read this link Client Settings FAQ[^].

In general the user settings is located under <Profile Directory>\<Company Name>\<App Name>_<Evidence Type>_<Evidence Hash>\<Version>\user.config

<Evidence Type> and <Evidence Hash> will change when digital sign your application and <Version> will change when you change AssemblyVersionAttribute.

If the program runs under a roaming profile, you have to specify which Settings is under Local or Roaming and <Profile Directory> will change for this settings.

When you change the AssemblyVersionAttribute you can call Properties.Settings.Value.Upgrade() function to and you then retrieve all settings to the new user.config.
 
Share this answer
 
Hello!

Thank you for the answear. The Question for me is, if it is possible to create this Hash-Folder outside of the application, before the application uses it (the folder will be created by the .Net-Framework, when changing, or closing the Application, and the correct folder does not exist).
To create this folder I would have to know if its possible, with all the information of the assembly, to calculate the hash for the folder -> create the folder, and then write the user.config from elsewhere in it.

That way i could overcome the citrix problem with roaming profiles, and every user could use his 'personal settings' like in a real roaming profile.

Thanks,

Greets,

Chris
 
Share this answer
 
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900