SHGetSpecialFolderPath gab es sogar schon bei Windows 95, vorausgesetzt man hatte den Internet Explorer von 3 auf 4 aktualisiert.
Und SHGetFolderPath gab es immer seit Windows 95.
Das mit der Registry war nur eine Idee aus der Beta von Windows 95, aber da schon 3 Programme oder so darauf zugriffen, hat man es dort stehen lassen und immer mit aktualisiert. Sonst hätten die Programme in der Final nicht mehr funktioniert. Heute dürfte man diese Entscheidung bei Microsoft bitter bereuen, wenn man sich anschaut wie verbreitet sich dieser Fehler hat (denn gedacht ist dafür ja die
API...).