Вoпросы вокруг unrar.dll

Только для тех, кто пишет плагины под Total Commander. Обмен опытом, решение проблем.

Модераторы: d-view, Моторокер, Avada, CaptainFlint, Nik

Ответить
Lamer
Сообщения: 522
Зарегистрирован: Пн мар 20, 2006 03:55

Вoпросы вокруг unrar.dll

Сообщение Lamer »

Зарепортили мне давеча на оффоруме баг с плагином fhRAR. И подкинули хитрый многотомный архив.Говорят,если заглянуть в него fhRARом, содержимое не видно. Так вот,для файла,содержащегося в этом архиве, unrar.dll возвращает fileattr = 0x000081b6 . :? Архив создан под юниксом. Для всех виндовых архивов значения fileattr корректные. Что скажете,более опытные товарищи? Откуда такое значение дурное берётся ? Может кто сталкивался.
Пробовал для проверки насильно присвоить корректное значение 0x00000020 и отдать Тоталу. Архив открывается нормально.
Аватара пользователя
Alextp
Сообщения: 4957
Зарегистрирован: Вс фев 06, 2005 17:21

Сообщение Alextp »

2Lamer
Ну так под Юниксами, может быть, другая нотация у поля fileattr. Ты Юниксы вообще видел? Там не такие атрибуты как в Виндах, а такие: Read, Write, Execute в трех экземплярах каждый. :)

Как именно Рошал кодирует это поле под Юниксами, смотри у него в доках.
Lamer
Сообщения: 522
Зарегистрирован: Пн мар 20, 2006 03:55

Сообщение Lamer »

Если б я эти доки нашёл, я бы не спрашивал.
А аттрибуты вообще не те.Ты мне сейчас аттрибуты безопасности под никсами описал.Это я знаю. Я не знаю,что под никсами соответствует виндовским "скрытый","архивный","ридонли".
Аватара пользователя
Alextp
Сообщения: 4957
Зарегистрирован: Вс фев 06, 2005 17:21

Сообщение Alextp »

А аттрибуты вообще не те.Ты мне сейчас аттрибуты безопасности под никсами описал.Это я знаю. Я не знаю,что под никсами соответствует виндовским "скрытый","архивный","ридонли".
Почему не те? Те.
Readonly - это выключенный Write. Архивный - нет такого. Скрытый - нет такого, файлы скрываются по имени: .hiddenfile.
Последний раз редактировалось Alextp Чт ноя 23, 2006 20:27, всего редактировалось 1 раз.
Аватара пользователя
Alextp
Сообщения: 4957
Зарегистрирован: Вс фев 06, 2005 17:21

Сообщение Alextp »

Смотри здесь:
http://www.mkssoftware.com/docs/man1/chmod.1.asp

-----
Absolute modes are octal numbers specifying the complete list of attributes for the files; you specify attributes by OR'ing together these bits.

01000000 temporary file
02000000 compressed file
04000000 sparse file
4000 Hidden file (setuid bit)
2000 System file (setgid bit)
1000 Archive bit (sticky bit)
0400 Individual read
0200 Individual write
0100 Individual execute (or list directory)
0040 Group read
0020 Group write
0010 Group execute
0004 Other read
0002 Other write
0001 Other execute
Lamer
Сообщения: 522
Зарегистрирован: Пн мар 20, 2006 03:55

Сообщение Lamer »

О,спасибка.Это уже информативно.
Начинаю вчитываться.
Скрытый - нет такого, файлы скрываются по имени: .hiddenfile.
Никогда бы не догадался :roll:
Lamer
Сообщения: 522
Зарегистрирован: Пн мар 20, 2006 03:55

Сообщение Lamer »

Выходит, анрар возвращал мне обычные 0666. Так что присваивать fileattr 0х00000020, в общем-то правомерно. Ну,пускай так и остаётся.Всё равно корректного набора виндовых аттрибутов,способных заменить никсовые, не подберёшь.

Ещё раз спасибо.
Ответить