ПредишенСледващото

Глава 7. Работа с файлове в езикови програми за сглобяване

Създаване, отваряне, затваряне и изтриване на файла

Създаване и отваряне на файла Win32 се произвежда от една функция CreateFile. МАНИПУЛАЦИИ CreateFi1eCLPCTSTR ipFileName, DWORD dwDesiredAccess. DWORD dwShareMode. LPSECURITY_ATTRIBUTES ipSecurityAttributes, DWORD dwCreationDistribution, DWORD dwFlagsAndAttributes. МАНИПУЛАЦИИ hTemplateFile):
Параметрите на тази функция са с размерите на двойно дума. Тяхната цел е следното (параметри са описани в обратен ред на въвеждането им в стека):

При успех, функцията връща дръжка EAX регистър в новия файл. В случай на неуспех, функцията връща NULL регистъра EAX стойност.

На успех функцията връща ненулева стойност в регистъра на EAX. В случай на неуспех, функцията връща NULL регистъра EAX стойност.

За да преместите Win32 файл съдържа две функции и MoveFile MoveFi 1 EEX:
BOOL MoveFile (LPCTSTR lpExistingFileName, LPCTSTR lpNewFileNam):
BOOL MoveFileEx (LPCTSTR TpExistingFileName LPCTSTR ipNewFileName DWORD dwFlags ..):
MoveFile функционални параметри са указатели към ASCIIZ Онлайн с имена на файлове и източник файл приемник. Функция MoveFi 1 Eex има допълнителни свойства, дължащи се на присъствието на трети параметър, който определя конкретния обем:

В допълнение, функцията MoveFi 1 Eex признава посочване на местоположението на Вторият параметър е NULL стойност, като по този начин симулиране на повикване Del eteFi I е функция.
При успех, функцията и MoveFile MoveFi 1 EEx връща ненулева стойност в EAX регистър. В случай на неуспех на функцията се връща NULL регистъра EAX стойност.

prg07_30.asm - Win32-nporpaMMa конзола заявление за научни изследвания: работа MoveFile функции (Ex) API Win32.
.
.данни
TitleText гб "преместване на файлове и Win32'.O
s_file db "р", 0; името на входния файл
d_file db "пи" 0.0: името на изходния файл
.код
.
натиснете компенсира d_file
натиснете компенсира s_file
повикване MoveFileA
СМР eax.O
JZ изход: изход в случай на повреда

Специална функция за преименуване на файл не е налице, тъй като не е необходимо - преместване на файл в същата директория, в природата и е преименуването.

За да изтриете даден файл се използва функция Del eteFi аз д:
BOOL DeleteFile (LPCTSTR TpFileName);
Тя има един единствен параметър - указател към ASCIIZ низ с името (път) на изтрити файлове. Преди изваждането на необходимостта да се прекрати преписката, въпреки че в някои версии на Windows, това не е задължително.
На успех функцията връща ненулева стойност в регистъра на EAX. В случай на неуспех, функцията връща NULL регистъра EAX стойност.

Подкрепете проекта - споделете линка, благодаря!