Gregory Stark wrote:
> "Tom Lane" <[EMAIL PROTECTED]> writes:
>>> !     /*
>>> !      * Note: We use getenv here because the more modern 
>>> SHGetSpecialFolderPath()
>>> !      * will force us to link with shell32.lib which eats valuable desktop 
>>> heap.
>>> !      */
>>> !     tmppath = getenv("APPDATA");
>> Hmm, is there any functional downside to this?  I suppose
>> SHGetSpecialFolderPath does some things that getenv does not...
> The functional difference appears to be that the environment variable is set
> on startup (or login?) and doesn't necessarily have the most up to date value
> if it's been changed. But it's not something you're likely to change and you
> can always adjust the environment variable manually to fix the problem.

If you're hacking the registry to change it then you've only got
yourself to blame if you don't update the environment as well imho.

I also wouldn't be at all surprised if many apps build paths containing
the value returned by SHGetSpecialFolderPath() (or %APPDATA%) at startup
and then use that value from then on rather than repeatedly calling the
API function. It's not like you'd expect the value to change at all
often, if ever.


---------------------------(end of broadcast)---------------------------
TIP 7: You can help support the PostgreSQL project by donating at


Reply via email to