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. /D ---------------------------(end of broadcast)--------------------------- TIP 7: You can help support the PostgreSQL project by donating at http://www.postgresql.org/about/donate