# DeleteFilesW

Функция `DeleteFilesW` вызывается для удаления файлов из эмулируемой файловой системы
(Far Manager плагину: "этот (эти) файлы с твоей панели нужно удалить").

    intptr_t WINAPI DeleteFilesW(
      const struct DeleteFilesInfo *Info
    );

### Параметры

Info
Указатель на структуру DeleteFilesInfo - информация, переданная Far Manager'ом плагину, об удаляемых элементах.
В начале функции проверьте, что поле `DeleteFilesInfo.StructSize >= sizeof(DeleteFilesInfo)`.

### Возвращаемое значение

Если функция выполнила свои действия успешно, то верните `1`. В противном случае `0`.

### Замечания

1. Плагин должен сам обрабатывать "свои" папки.
2. Хорошим тоном считается вариант, когда плагин перед удалением "попросит" пользователя подтвердить о своих намерениях.

### Пример

    intptr_t WINAPI DeleteFilesW(const struct DeleteFilesInfo *Info)
    {
      struct PluginPanelItem * curPI=&Info->PanelItem[0];
      for(int CurItem=0; CurItem<Info->ItemsNumber; CurItem++, curPI++)
      {
        wchar_t *File=curPI->FileName;
        if(!RemoveFileFromFS(File))
        {
          wchar_t *MsgItems[]={L"Delete failed",L"",L"OK"};
          MsgItems[1] = GetErrorStringFS();
          Message(&MainGUID,&MsgGUID,0,NULL,MsgItems,sizeof(MsgItems)/sizeof(MsgItems[0]),1);
          return 0;
        }
      }
      return 1;
    }

Смотрите также: