Re: Best Programming Practice?
- From: "Jeff Pitsch [MVP]" <jeff@xxxxxxxxxxxxxxxxx>
- Date: Fri, 24 Feb 2006 10:40:17 -0500
Truthfully, from an admin standpoint, i don't wan tto have to deal with ini
files. When I help companies evaluate applicatoins, things we look at are
how well developed applications are and it is a blackmark when an app uses
ini files for per user settings. Take that for what you will, that's
obviously just my opinion.
Jeff Pitsch
Microsoft MVP - Terminal Services
http://www.sbcgatekeeper.com
Your Terminal Services Security Website
"David White" <whitedavidp@xxxxxxxxxxx> wrote in message
news:OPFPXdVOGHA.720@xxxxxxxxxxxxxxxxxxxxxxx
Thanks for the long response TP. It is appreciated. I have read some of
the stuff provided - mostly in Bernie's book. Your statement below, "There
are pros/cons to storing user preferences in files, the registry...", is
what I am really getting at. It still is not clear to me what these are
and I hoped that folks with actual experience could help me make this
decision. No DBMS to worry about though.
Cheers,
David
TP wrote:
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.
.
- Follow-Ups:
- Re: Best Programming Practice?
- From: TP
- Re: Best Programming Practice?
- References:
- Best Programming Practice?
- From: David White
- Re: Best Programming Practice?
- From: TP
- Re: Best Programming Practice?
- From: David White
- Best Programming Practice?
- Prev by Date: Re: remote control "error 5 - access is denied"
- Next by Date: Re: Dial Up Client printer problem
- Previous by thread: Re: Best Programming Practice?
- Next by thread: Re: Best Programming Practice?
- Index(es):
Relevant Pages
|