Re: Best Programming Practice?



Hi David,

In general, you should follow the Application Compatibility guidelines on MSDN, Windows 2003 specifications, as well as the Windows XP logo specifications. There is tons of relevant information up on MSDN, so you should spend time researching there.

Free tools are available that will help you test your application to make sure you are not doing anything too strange.

Some pointers for you from memory:

- Use the appropriate api calls to obtain paths
- Store user-created documents under a subfolder of My Documents, remember, use api to obtain path to My Documents
- Store roaming per-user application settings under a subfolder of Application Data (use api)
- If you want to store per-user information in the registry, store it in HKCU. This is for small amounts of data.
- There are pros/cons to storing user preferences in files, the registry, or maybe in your database backend if you are using one--consider carefully
- Have the ability to degrade or disable features that are not appropriate under low-bandwidth TS connections, like animations, splash screens, etc.
- Test that your application runs fine under a limited user account
- If a group policy setting applies to your application, honor it

If you play your cards right, your application will run well under TS with no special effort required by the TS installer. Also, the special "tricks" that the TS uses (like the shadow reg key) to help applications run under a multi-user environment will be unnecessary.

Below are some links to help you get started:

Designed for Windows XP Spec

http://www.microsoft.com/downloads/details.aspx?FamilyID=209e3d65-f0be-4eef-8602-73bb9bc29d54

Windows 2003 specification

http://www.microsoft.com/windowsserver2003/partners/isvs/appspec.mspx

Windows Logo

http://www.microsoft.com/winlogo/default.mspx

Application Compatibility Toolkit

http://msdn.microsoft.com/compatibility/

-TP

David White wrote:
I am writing an application to run on TS/Citrix. Is it better
practice to store a file containing user-specific application
parameters/settings somewhere under the user's home directory
(%HOMEDRIVE%%HOMEPATH%) or under the user's application data
directory (%APPDATA%)? I need to support load-balanced user sessions
so I need to put this information in a location where it will be
universally available. I understand that the home directory is often
mapped from a network location but I don't know if this is also true
of the application data directory. Thanks.
.



Relevant Pages

  • Re: Best Programming Practice?
    ... In general, you should follow the Application Compatibility guidelines on MSDN, Windows 2003 specifications, as well as the Windows XP logo specifications. ... Store user-created documents under a subfolder of My Documents, remember, use api to obtain path to My Documents ... There are pros/cons to storing user preferences in files, the registry, or maybe in your database backend if you are using one--consider carefully ... I understand that the home directory is often ...
    (microsoft.public.windows.terminal_services)
  • Re: how to set up no need for ability to handle multiple users on machine
    ... Then, from the mess that I saw over the years in windows, some applications give a s**t about the personalized "My Documents" folders and store user documents somewhere on c:. ... No program will ever ignore your home directory, because it was never possible to ignore it. ... Linux never had this, so no program ever did it simply because it wasn't possible to write to non-user writable directories. ...
    (alt.os.linux.suse)
  • Re: Restore Question....
    ... Did you buy computer at a local store or online? ... the updates are listed in my Add/Remove Programs." ... Are the Windows Updates listed -Start, Control Panel, Add / Remove ... About three weeks ago I tried to use the System Restore feature to ...
    (microsoft.public.windowsxp.perform_maintain)
  • Re: Best Programming Practice?
    ... how well developed applications are and it is a blackmark when an app uses ... MSDN, Windows 2003 specifications, as well as the Windows XP logo ... Store user-created documents under a subfolder of My Documents, ... There are pros/cons to storing user preferences in files, the registry, ...
    (microsoft.public.windows.terminal_services)
  • Re: restrict software installation
    ... Preventing users from executing stuff on their home directory and in ... Is there some similar principle in Windows? ... emphasis on 'minimize network transfers'. ... Perhaps you can control this via some scripting stuff? ...
    (Focus-Microsoft)