CakeWorker,
Или я чего-то не понимаю..?
Видимо, не очень.
Папки для хранения временных файлов неправильно называть системными (если только сама система в них не хранит свои временные файлы). Каждая программа, разумеется, вольна хранить временные файлы там, где ей заблагорассудится. При этом, правда, возникают, следующие проблемы: программы иной раз "забывают" про свои временные файлы, например, при внезапной перезагрузке системы. Уборка мусора упрощается, если заранее оговорить, что такая-то папка будет использоваться исключительно для хранения временных файлов. И вторая проблема, которая возникает при работе нескольких пользователей на одном и том же компьютере, это - независимость сессий друг от друга. Для решения этой задачи для каждого пользователя создается своя папка для хранения временных файлов в папке, где хранится пользовательский профиль (особенно строгий подход к этой проблеме осуществляется, если компьютер используется, как терминальный сервер).
Каким образом программа должна узнать, где для конкретного пользователя создавать временные файлы? Корректно написанная программа узнает это из переменной окружения ТMP. Если эта переменная не определена, то путь берется из переменной окружения TEMP, а если и эта переменная пустует, то в качестве временной папки используется корневая директория Windows, путь к которой можно узнать из переменной %SystemRoot%.
Следовательно, если ты изменишь значения этих переменных вручную, то все корректно написанные программы начнут хранить свои временные файлы там, где ты им укажешь.
Но, кроме переменных окружения TMP и TEMP есть еще и одноименные системные переменные, которые используются службами windows для хранения своих временных файлов. По умолчанию значения этих переменных %SystemRoot%/TEMP, то есть, для WinXP - C:\Windows\Temp. Вот эту-то папку с полным правом можно назвать системной. Кстати, ее тоже можно изменить, если отредактировать значение этих переменных.