Delphi FAQ - Удаление файлов из временного каталога, безопасно ли?
ОГЛАВЛЕНИЕ
Удаление файлов из временного каталога, безопасно ли?
При получении имени папки предназначенной для хранения временных файлов могут возникнуть ytrjnhst проблемы.
>> Прекрасно это выглядит, когда в качестве каталога временных файлов
назначен например C:\Windows
>:-) Я и говорю что небезопасно.
Особенно пикантно это выглядит, в свете того, что
Remarks
Windows 95/98/Me: The GetTempPath function gets the temporary file
path as follows:
The path specified by the TMP environment variable. The path specified by
the TEMP environment variable, if TMP is not defined or if TMP specifies a
directory that does not exist. The current directory, if both TMP and TEMP
are not defined or specify nonexistent directories.
Этак переименовываешь C:\TEMP - и программа чистит текущий каталог :-)
Windows NT/2000 or later: The GetTempPath function does not verify that the
directory specified by the TMP or TEMP environment variables exists. The
function gets the temporary file path as follows:
The path specified by the TMP environment variable. The path specified by
the TEMP environment variable, if TMP is not defined. The Windows
directory, if both TMP and TEMP are not defined.
Этак удаляешь переменные окружения - и программа "деинсталлирует" Windows
Из этого вытекает следующее, удаление файлов из любого каталога, особенно из
временного чрезвычайно поасная операция, не ты создал - не трогай. Удалять
только ручками, глядя на файлы и принимая решения индивидуально по каждому
файлу.
При использовании функции GetTempPath проверить если подстрока TEMP в
результате и в случае отсутствия вхождения запросить пользователя для
принятия решения, с рекомендацией создать каталог TEMP и необходимые
переменные среды, лучше посоветоваться обратиться к администратору для
принятия решения. Это простое правило позволит избежать серьезных
последствий.
Тенцер А.Л. <Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.>
Andrew V. Fionik <Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.>
Anatoly Podgoretsky <Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.>