• Сервис онлайн-записи на собственном Telegram-боте
    Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое расписание, но и напоминать клиентам о визитах тоже. Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.
    Для новых пользователей первый месяц бесплатно.
    Чат-бот для мастеров и специалистов, который упрощает ведение записей:
    Сам записывает клиентов и напоминает им о визите;
    Персонализирует скидки, чаевые, кэшбэк и предоплаты;
    Увеличивает доходимость и помогает больше зарабатывать;
  • Как продвинуть сайт на первые места?
    Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.
    Ускорение продвижения
    Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.


Иллюстрированный самоучитель по задачам и примерам Assembler

Создание, открытие, закрытие и удаление файла

Закрытие файла

Закрытие файла производится функцией CloseHandle:

B00L CloseHandle(HANDLE hObject);

Функция имеет один параметр размером в двойное слово – дескриптор, полученный при открытии файла функцией CreateFile.

При удачном завершении функция возвращает ненулевое значение в регистре ЕАХ. В случае неудачи функция возвращает в регистре ЕАХ значение NULL.

Win32 поддерживает несколько функций для часто используемых операций над файлами: копирование, перемещение и переименование файлов.

Копирование файла

Для копирования файлов в Win32 используется функция CopyFile:

B00L CopyFile(LPCTSTR lpExistingFileName. LPCTSTR ipNewFileName. B00L bFailIfExists):

Параметрами этой функции являются:

  • lpExistingFileName – указатель на ASCIIZ-строку с именем файла-источника;
  • lpNewFileName – указатель на ASCIIZ-строку с именем файла-приемника, который может и не существовать;
  • bFailIfExists – параметр, задаваемый равным 0 или 1, в зависимости от условий копирования:
  • 0 – при наличии файла он удаляется и создается новый с содержимым файла-источника;
  • 1 – при наличии файла копирование не производится, а функция CopyFile возвращает ошибку.

При удачном завершении функция возвращает ненулевое значение в регистре ЕАХ. В случае неудачи функция возвращает в регистре ЕАХ значение NULL.

;prg07_29.asm – Win32-nporpaммa консольного приложения для исследования
;работы функции CopyFile API Win32.
;………………………………………………….
.data
TitleText db 'Копирование файлов в Win32'.О
s_file db "p".O;имя входного файла
d_file db "pi".0;имя выходного файла
.code
mov eax.l
push eax
push offset d_file
push offset s_file
call CopyFileA
cmp eax.O
jz exit.выход в случае неудачи
:………
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.