Reimplementation of SHGetPathFromIDListA/W() using the new helper
functions SHELL_GetPathFromIDListA/W(). The new implementation avoids
using IShellFolder::GetDisplayNameOf(), so that it
- returns the absolute file system path, not relative to the dekstop
- returns FALSE as error code if the path can not converted in a valid
file system path
- doesn't return virtual CLSID paths
Call by pointer for more functions not available in early versions.
Add tests for VarFix/VarInt/VarNeg, VarFormat "on/off/yes/no".
Fix tests that assumed relative dates.
Make BSTR copy test separate.
page CP_SYMBOL.
Remove the symbol font from the code page table, so it is not reported
as a valid/supported/installed code page.
Remove workarounds for the badly behaved MultiByteToWideChar and co.
in a few places.
- corrected SCF_UNICODE constant and use the value of SCF_UNC instead
- implemented IShellLink_ConstructFromFile() to read shell links from
files
- call IShellLink_ConstructFromFile() in ISF_..._fnGetUIObjectOf()
when being queried for IShellLink interface
- completely rewritten headers (DX9 compat.; look much nicer now ;=)
- removed IDirectMusicSong and IDirectMusicMelodyFormulationTrack
(which are removed from DX9; weren't implemented in DX8 anyway)
- combined/simplified IDirectMusicSomething / IDirectMusicObject /
IPersistStream for objects that support loading
- implemented IDirectMusicObject on all such objects; via generic
functions
- combined IDirectMusicTrack(8)/IPersistStream on all tracks
- fully implemented IDirectMusicContainer (at least 90% if there are
no private interfaces)
- implemented IDirectMusicCollection (99% work & MS compliant
behaviour; except for instruments)
- tried to implement IDirectMusicInstrument (unfortunately uses some
dirty private interfaces... :(
- added dswave.dll; DirectMusic Wave
- some changes in style
- many, many more ;)
SHELL_FS_ProcessDisplayFilename() to call it also in
ISF_Desktop_fnGetDisplayNameOf() and do the same file system
processing for the desktop level
- handle hidden file extensions in SHELL_FS_ProcessDisplayFilename(),
that are configured by "NeverShowExt" in the registry