пятница, 4 сентября 2009 г.

Почему у нас есть отдельная функция GetSystemDirectory?

Это перевод Why is there a separate GetSystemDirectory function? Автор: Реймонд Чен.

Если системный каталог всегда %windir%\SYSTEM32, то зачем нам специальная функция для его получения?

Потому что не всегда было так.

Для всех 16-ти битных программ в Windows NT, системный каталог будет %windir%\SYSTEM. Он же будет именем системного каталога на всех Windows 9x системах и на всех 16-ти битных версиях Windows.

Но даже в 16-ти битном мире, если он всегда был %windir%\SYSTEM, зачем нужна функция для его получения?

Потому что даже в 16-ти битном мире, системный каталог не всегда был %windir%\SYSTEM.

В те давние дни, вы могли запускать Windows прямо по сети. Все системные файлы хранились на сетевом сервере, и только пользовательские файлы хранились на локальной машине. И даже больше: каждый компьютер в сети использовал один и тот же системный каталог на сервере. Была только одна копия, например, USER.EXE, которую использовали все.

При сетевой конфигурации Windows, системный каталог был папкой где-то на сервере (\\server\share\somewhere), а каталог Windows был папкой на локальной машине (C:\WINDOWS). Клиенты не имели прав записи в системный каталог, но они могли писать в папку Windows.

Вот почему GetSystemDirectory является отдельной функцией.

1 комментарий:

Можно использовать некоторые HTML-теги, например:

<b>Жирный</b>
<i>Курсив</i>
<a href="http://www.example.com/">Ссылка</a>

Вам необязательно регистрироваться для комментирования - для этого просто выберите из списка "Анонимный" (для анонимного комментария) или "Имя/URL" (для указания вашего имени и ссылки на сайт). Все прочие варианты потребуют от вас входа в вашу учётку.

Пожалуйста, по возможности используйте "Имя/URL" вместо "Анонимный". URL можно просто не указывать.

Ваше сообщение может быть помечено как спам спам-фильтром - не волнуйтесь, оно появится после проверки администратором.

Примечание. Отправлять комментарии могут только участники этого блога.