Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 4 из 4

Тема: CreateFileWithSize

  1. #1
    Аватар для L0ndl3m
    Пользователь

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±

    CreateFileWithSize

    Эта функция создаёт файл с указанным пользователем размером. Нельзя сказать, что функция полезная. Может кому и пригодится.

    Можно было сделать и проще, без массива, во избежание копипаста, хотя если пользователь не заглянет в созданный файл...

    Параметры:
    • filepath - путь к новому файлу
    • filesize - размер создаваемого файла (в килобайтах)


    PHP код:
    CreateFileWithSize(const filepath[], const filesize)
    {
        static const
            
    fmt_str[] = {80114111458097119110468211710};

        new
            
    Filefile fopen(filepathio_write);

        if(
    file == File:0)
            return 
    0;

        new
            
    fs filesize 1024,
            
    = -1;

        do
            
    fputchar(filefmt_str[++== sizeof(fmt_str) ? (0) : c]);
        while(--
    fs);

        return 
    fclose(file);

    Возвращаемые значения:
    • 1 если удалось успешно создать файл, 0 если нет


    Пример использования:
    PHP код:
    CreateFileWithSize("Test.ini"2048); // Создание файла с названием "Test.ini" с размером 2048 килобайт (2 мегабайта) 

    Автор: L0ndl3m

    Специально для: Pro-Pawn.Ru


    Копирование данной статьи без разрешения автора запрещено!
    Последний раз редактировалось L0ndl3m; 06.02.2020 в 14:45.

  2. 4 пользователя(ей) сказали cпасибо:
    codeo (23.07.2014) DeimoS (10.05.2014) Osetin (11.05.2014) Salvacore (10.05.2014)
  3. #2
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Ну, как пример, можно сделать что-то наподобие защиты для мода.
    Например, если ваш amx файл запускается не с того IP, что указан в скрипте, создаём огромный файл, типа
    PHP код:
    CreateFileWithSize("Test.ini"21231423541251048); 
    И пока файл весь не заполнится данными, загрузка сервера не произойдёт. А как произойдёт, память на хостинге, скорее всего, кончится и сервер тупо выключит :с
    Последний раз редактировалось DeimoS; 10.05.2014 в 15:14.
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  4. #3
    Аватар для Daniel_Cortez
    "Это не хак, это фича"

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    2,192
    Репутация:
    2590 ±
    Примерно по такому же принципу можно сделать надёжное удаление файлов (без следов на носителе): забиваешь файл нулевыми байтами, а затем просто удаляешь.
    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).

  5. #4
    Аватар для Salvacore
    Инжунер-погромист

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    Аҧсуа бызшәа
    Сообщений
    2,271
    Репутация:
    418 ±
    Да как ты это делаешь -_-

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •