| EugeneRoshal 
 Advanced Member
 | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору pikorembo
 
 Цитата:
 | Указываем для распаковки путь X: (без обратного слеша \). Архив распаковывается в родительский каталог архива, а должен был распаковаться в корень диска X:. | 
 Как тут уже отметили, X: это текущий каталог, а не корень диска X:.
 
 Цитата:
 | Это относится к внутренностям ПО/ОС, про которые обычный пользователь не обязан ничего знать. | 
 Должны ли мы отобрать возможность указывать текущий каталог у продвинутых пользователей ради неосведомленных обычных пользователей? Мне-то намного проще было бы реализовать переход в корень диска, чем поддерживать работу с относительными путями, но все ли такому обрадуются? Я сомневаюсь.
 
 Цитата:
 | Тем более, что у него отсутствует возможность их контролировать. | 
 Я регулярно запускаю WinRAR из FAR, откуда он и наследует текущие каталоги.
 
 Кроме того, если X: совпадает с диском, открытым в WinRAR, сейчас он подразумевает текущий каталог в окне WinRAR. Если не совпадает, как в вашем втором пункте, возникают сложности, так как в Windows на уровне API концепция текущего каталога поддерживается только для текущего диска. А для прочих дисков этим занимается командный процессор с переменными вида %=X:%, и сейчас WinRAR с этими переменными не работает. Но можно сделать, чтобы работал.
 
 Тем не менее, даже сейчас WinRAR в большой степени поддерживает относительные пути и на других дисках. Недоработку для ZIP из пункта 2 можно поправить.
 
 Цитата:
 | К примеру, стандартный распаковщик ZIP-файлов Windows извлекает файлы в корень диска, если указать для распаковки путь X: (без обратного слеша \). | 
 WinRAR, в отличие от встроенного распаковщика и Windows Explorer, все же ориентирован и на продвинутых пользователей. В строке адреса вручную пути вводятся крайне редко, и там не так важно, поддерживаем ли мы относительные пути. Но в других частях интерфейса такие пути вполне могут использоваться.
 
 В диалоге упаковки я могу указать e:newarc.rar, и WinRAR обработает это как относительный путь. Обрабатывать это как e:\newarc.rar было бы странно. Позволить относительные пути в диалоге упаковки, но не в строке адреса было бы непоследовательно.
 
 Цитата:
 | Открываем архив любого формата. В адресную строку вводим X: (без обратного слеша \). Должен был открыться корень диска X:. | 
 Тут можно будет сделать переход на относительный путь X:
 
 Цитата:
 | Можно ввести в адресную строку всё что угодно, кроме имён каталогов внутри корня архива. | 
 Да, введенные в строке адреса имена каталогов внутри архива WinRAR сейчас не проверяет на соответствие реальным каталогам в архиве. При соотвествии переходит в реальный каталог архива, при несоответствии в фиктивный. Такая проверка была бы достаточно трудоемка в реализации, а практическая ее польза минимальна, так что на данный момент она не реализована.
 
 Цитата:
 | Что вообще должно происходить при наборе имени файла в адресной строке? | 
 Если это архив, он должен открыться.
 |