Старожил
Сообщения: 240
Благодарности: 1
|
Профиль
|
Отправить PM
| Цитировать
Понятие текущая директория - это наследство DOS. Там она отображалась в приглашении командной строки, после выбора диска и нескольких команд cd aaa\bbb, например. Т.е. это та директория на текущем диске, в которую ты вошёл. При наборе имени программы, которую ты хотел бы запустить, DOS сначала искала её в этом каталоге (текущем) или, если не находила, перебирала каталоги, указанные в переменной среды PATH. После того, как программа стартовала, текущий каталог оставался неизменным, а именно тем, в котором ты находиося, запуская программу. Хотя, если в программе были соответствующие вызовы, она могла сменить текущий каталог. Все файлы, открываемые на чтение или запись, брались/создавались в этом каталоге, если путь был указан как относительный, а не абсолютный.
В принципе Win XP тоже сохранила это понятие, хотя в ней трудно оставаться в одном и том же каталоге всё время. Как только ты открываешь (например в проводнике) ещё одну папку, сразу попадаешь в другой каталог, который и становится текущим. А при запуске программы надо рассматривать три вида каталогов - текущий, рабочий и каталог программы. В момент запуска текущим остаётся тот каталог, где ты находился. Но многие программы имеют еще т.н. рабочий каталог, они выдают запрос на смену текущего каталога и делают текущим рабочий. И ещё они точно знают тот каталог, где находится их бинарник.
|