Wir hatten das hier schon ziemlich oft...
Programm liegen unter c:\programme bzw c:\program files
Dort darf ein User NICHT schreiben (das ist auch schon bei XP so)!
Somit kannst du dort auch keine Ordner anlegen.
Abhängig von den Manifesten an deiner Anwendung, schlägt die Dateisystem Virtualisierung zu!
Der Temp-Pfad ist (abhängig vom Benutzerkonto und
UAC) im Benutzerprofil oder unter c:\windows\temp.
Letzter Ordner kann auch nur mit Adminrechten geschrieben werden.
Die Ordner solltest du wenn überhaupt nur über die "well known folders" ermitteln.