>> Hmm. That would seem to have it. Can you check the version on your
>> SHELL32.DLL?
>> The MSDN docs for the version in question
>> (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/
>> shellc
>>
>c/platform/shell/reference/functions/shgetspecialfolderpath.asp) claims
>> it needs either Win2k or The IE 4.0 Desktop Update. Which resolves to
>> shell32.dll version 4.71 or later.
>>
>
>WINNT\System32\Shell32.dll is version 4.00, so that appears to be the
>problem.
>
>According to this: http://support.microsoft.com/kb/q165695/ Windows
>Desktop update was included with IE 4, but not with IE 5 or later.
>Further, if you want to install Windows Desktop Update you have to
>first remove IE 5 or later. And finally it says that Windows Desktop
>Update can only be installed using the IE 4 setup, but this is no
>longer available from Microsoft. What a mess.
Yikes. that's certainly a mess. I see the following options:
1) Declare NT4 without IE4 unsupported. This is by far the easiest :P
What we'd do later is add a check to the MSI installer to inform the
user about this.
2) Revert to the pre-8.0 behaviour with the files. This is IMHO a very
bad idea, because that was not well-behaved on *current* Windows
platforms.
3) Change to using SHGetFolderPath() linked from shfolder.dll (note that
this function exists in two different dlls. We'd need the one in
shfolder.dll to have any effect). And then point people who don't have
shfolder.dll to the Microsoft download site for this file (it's
redistributable, but only in an unmodified self-extracting file, so we
can't easily embed it in the installer. can be done, but not as easy as
one would like). It will be required on most systems running 95, 98 and
NT4 (without it we'll be broken on 95 and 98, which work today). The
file is included on current windows versions by default. This is
probably the nicest idea, but I'm not sure how much work we want to
throw into the NT4 support. Considering MS has stopped supporting it
even to their pay-through-the-nose-for-support customers by now. (and we
*do* work on NT4 as long as the user has installed IE4)
Thoughts?
//Magnus