Page 1 of 1

Sysfunction 70.10 "rename/move"

Posted: Thu Jun 08, 2017 1:39 pm
by Pathoswithin
А так же 80.10
Позволяет переименовывать/перемещать файлы,
ваш Кэп.

revision #6917
Для FAT готово.

Re: Sysfunction 70.10 "rename/move"

Posted: Thu Jun 08, 2017 6:53 pm
by Siemargl
Работает в пределах каталога, раздела или универсальна?

Т.е можно ли переименовать, переместить?
1. /usbhd0/1/xx. в /hd0/1/yy.
2. /hd0/1/yy. в /hd0/1/222/zz.
2а. в случае если /hd0/1/222 не существует

Re: Sysfunction 70.10 "rename/move"

Posted: Thu Jun 08, 2017 11:46 pm
by Pathoswithin
Работает в пределах раздела.

Только 2.

Re: Sysfunction 70.10 "rename/move"

Posted: Sat Sep 30, 2017 7:19 pm
by 0CodErr
Пробую переименовать

Code: Select all

...
szCalc db '/sys/calc',0
szCalcRenamed db '/sys/calcRenamed',0
...
        push   dword szCalc
        dec    esp
        mov    [esp], byte 0
        push   dword szCalcRenamed
        push   dword 0
        push   dword 0
        push   dword 0
        push   dword 10
        mov    ebx, esp
        mov    eax, 70
        int    64            
...
Почему-то возвращается ошибка
Spoiler:
2.PNG
2.PNG (70.15 KiB)
Viewed 8053 times
Пробую удалить

Code: Select all

        push   dword szCalc
        dec    esp
        mov    [esp], byte 0
        push   dword 0
        push   dword 0
        push   dword 0
        push   dword 0
        push   dword 8
        mov    ebx, esp
        mov    eax, 70
        int    64
Работает
Spoiler:
1.PNG
1.PNG (72.8 KiB)
Viewed 8053 times

Re: Sysfunction 70.10 "rename/move"

Posted: Tue Oct 03, 2017 1:31 am
by Pathoswithin
А если прочитать замечания в документации?

Re: Sysfunction 70.10 "rename/move"

Posted: Tue Oct 03, 2017 12:11 pm
by 0CodErr
Сейчас некоторым файлам\папкам(например, /sys/3D и /sys/calc) при переименовании можно дать "пустое имя".
Думаю, это плохая идея :)
Лучше возвращать ошибку.

Re: Sysfunction 70.10 "rename/move"

Posted: Tue Oct 03, 2017 12:56 pm
by 0CodErr
Если исходное и новое имя совпадают, то возвращается "Access denied".
Думаю, лучше по аналогии с CreateFolder: если уже существует, то это не ошибка.

Re: Sysfunction 70.10 "rename/move"

Posted: Tue Oct 03, 2017 1:50 pm
by Pathoswithin
revision #7040

Второе сделать непросто. Вернее нужно полностью сравнивать строки, а это тупо деоптимизация.