File System Library (FSL)

Discussing libraries simplifying applications development
  • punk_joker wrote:В callback-функцию предается указатель н строку с именем файла, или как? И callback-функция вызывается перед началом каких либо операций над файлом?
    Если например callback ф-ция копирования, то регистр ECX держит название пути от куда копируется файл, а EDX куда.
    Она вызывается при операции над файлом, если 300 файлов копируется, то 300 вызывается.

    На счет кол-во файлов и папок. Сделал из можно получить при получении размера файла. Т.е. вызываешь к примеру fs.get_size("/sys/") -> EAX регистр содержит размер папки, а ECX -> кол-во вложенных папок, EDX кол-во файлов.
    Технологии меняют мир, а я - меняю технологии.
  • pavelyakov wrote:На счет кол-во файлов и папок. Сделал из можно получить при получении размера файла. Т.е. вызываешь к примеру fs.get_size("/sys/") -> EAX регистр содержит размер папки, а ECX -> кол-во вложенных папок, EDX кол-во файлов.
    Это уже реализовано? Если да, то код

    Code: Select all

    fs.get_size(#file_path);
    size_dir = EAX;
    file_count = EDX;
    dir_count =ECX;
    
    Выводит всякую чушь
    to infinity and beyond
  • punk_joker wrote:
    pavelyakov wrote:На счет кол-во файлов и папок. Сделал из можно получить при получении размера файла. Т.е. вызываешь к примеру fs.get_size("/sys/") -> EAX регистр содержит размер папки, а ECX -> кол-во вложенных папок, EDX кол-во файлов.
    Это уже реализовано? Если да, то код

    Code: Select all

    fs.get_size(#file_path);
    size_dir = EAX;
    file_count = EDX;
    dir_count =ECX;
    
    Выводит всякую чушь
    Ты преобразовывал в строковой вид?
    Технологии меняют мир, а я - меняю технологии.
  • Зачем? Выводится так
    sprintf(#folder_info,"%s%d%s%d",SET_6,file_count,SET_7,dir_count);
    to infinity and beyond
  • punk_joker wrote:Зачем? Выводится так
    sprintf(#folder_info,"%s%d%s%d",SET_6,file_count,SET_7,dir_count);
    Что показывает? Посмотрел вроде нормально показывает, мб через регистры плохая идея передавать, возможно они меняются..
    Если программа не вылетает, запили так тогда, я посмотрю и исправлю недочеты в либе.
    Технологии меняют мир, а я - меняю технологии.
  • pavelyakov wrote:
    punk_joker wrote:Зачем? Выводится так
    sprintf(#folder_info,"%s%d%s%d",SET_6,file_count,SET_7,dir_count);
    Что показывает? Посмотрел вроде нормально показывает, мб через регистры плохая идея передавать, возможно они меняются..
    Если программа не вылетает, запили так тогда, я посмотрю и исправлю недочеты в либе.
    Кинь код на котором проверял
    to infinity and beyond
  • Залил. Постарайся с этим разобраться в ближайшее время, иначе я не смогу продолжить работу над исправлением ошибок.
    to infinity and beyond
  • punk_joker wrote:Залил. Постарайся с этим разобраться в ближайшее время, иначе я не смогу продолжить работу над исправлением ошибок.
    Исправил, правда вместо прошлого размера (файла/папки) формата long long, поменял на int, надо будет потом попробовать через стек передать.
    Технологии меняют мир, а я - меняю технологии.
  • При копировании одного файла, callback-функция не вызывается
    to infinity and beyond
  • punk_joker wrote:При копировании одного файла, callback-функция не вызывается
    поменял
    Технологии меняют мир, а я - меняю технологии.
  • Так я не понял, она что, по 1 Мб файл копирует? Это слишком мало, даже KFM четверть памяти берёт. А лучше брать половину. Тем более, в NTFS по началу не будет поддерживаться редактирование.
  • проверь библиотеку на признак отладочной инфы
    to infinity and beyond
  • По возможности пофиксю, сейчас я в армии
    Технологии меняют мир, а я - меняю технологии.
  • Offtopic:
    pavelyakov wrote:По возможности пофиксю, сейчас я в армии
    О! Колибри ОС и в армии появилась. :)
  • Who is online

    Users browsing this forum: No registered users and 5 guests