Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
КН
Кафедра:
Не вказано

Інформація про роботу

Рік:
2010
Тип роботи:
Лабораторна робота
Предмет:
Програмування

Частина тексту файла (без зображень, графіків і формул):

Національний університет Львівська політехніка Кафедра АСУ Звіт З лабораторних робіт По системному програмуванню Лабораторна робота №1 .386 ; Для процесора не нижче INTEL-386 .model flat, STDCALL ; компілювати як програму для WIN32; ; Визначення зовнішніх процедур: extrn ExitProcess :proc ; Ліквідація процесу, extrn MessageBoxA :proc ; Вивід вікна з повідомленням, extrn GetComputerNameA :proc ; Отримання імені комп’ютера. .data ; Вміст сегменту даних: buflen dd 256 ; Визначення комірки пам’яті hello_title db ' Лабораторна робота № 1 Олександра Головача', 0 hello_message db 'Computer Name: ' ; Рядок байтів user_name db 256 dup (0) ; Буфер заповнений нулями .code ; Вміст сегменту коду: Start: push offset buflen ; 2-й параметр: адреса buflen push offset user_name ; 1-й параметр: адреса user_name call GetComputerNameA ; виклик функції API push 40h ; стиль вікна – одна кнопка “OK” з піктограмою “і” push offset hello_title ; адреса рядка із заголовком push offset hello_message ; адреса рядка з повідомленням push 0 ; хендл програми-власника вікна call MessageBoxA ; виклик функції API push 0 ; код виходу з програми call ExitProcess ; завершення програми end Start ; закінчення сегменту кода  Лабораторна робота №1а .386 ; Для процесора не нижче INTEL-386 .model flat, STDCALL ; компілювати як програму для WIN32; ; Визначення зовнішніх процедур: extrn ExitProcess :proc ; Ліквідація процесу, extrn MessageBoxA :proc ; Вивід вікна з повідомленням, extrn GetUserNameA :proc ; Отримання імені комп’ютера. .data ; Вміст сегменту даних: buflen dd 256 ; Визначення комірки пам’яті hello_title db ' Лабораторна робота № 1 Виконав студент Олександр Головач, 0 hello_message db "Ім'я користувача: " ; Рядок байтів user_name db 256 dup (0) ; Буфер заповнений нулями .code ; Вміст сегменту коду: Start: push offset buflen ; 2-й параметр: адреса buflen push offset user_name ; 1-й параметр: адреса user_name call GetUserNameA ; виклик функції API push 40h ; стиль вікна – одна кнопка “OK” з піктограмою “і” push offset hello_title ; адреса рядка із заголовком push offset hello_message ; адреса рядка з повідомленням push 0 ; хендл програми-власника вікна call MessageBoxA ; виклик функції API push 0 ; код виходу з програми call ExitProcess ; завершення програми end Start ; закінчення сегменту кода  Лабораторна робота 1b .386 .model flat, STDCALL extrn ExitProcess :proc extrn MessageBoxA :proc extrn GetCurrentDirectoryA :proc .data ; Вміст сегменту даних: buflen dd 256 ; Визначення комірки пам’яті hello_title db ' Лабораторна робота № 1 Виконав Олександр Головач', 0 hello_message db 'Поточний каталог: ' ; Рядок байтів user_name db 256 dup (0) ; Буфер заповнений нулями .code ; Вміст сегменту коду: Start: call GetCurrentDirectoryA ,buflen, offset user_name ; виклик функції API push 40h ; стиль вікна – одна кнопка “OK” з піктограмою “і” push offset hello_title ; адреса рядка із заголовком push offset hello_message ; адреса рядка з повідомленням push 0 ; хендл програми-власника вікна call MessageBoxA ; виклик функції API push 0 ; код виходу з програми call ExitProcess ; завершення програми end Start ; закінчення сегменту кода  Лабораторна робота 2а. .586 .model flat,stdcall Extrn ExitProcess:Proc Extrn CopyFileA:Proc extrn MessageBoxA:Proc .data zag db "О.Головач.копіювання файла " test1 db "test1.txt",0 test2 db "Tewst2.txt",0 .code Start: CALL CopyFileA,offset test1,offset test2,0 call MessageBoxA,0,offset zag,offset test2,0 call ExitProcess,0 end Start  Лабораторна робота № 2b .586 .model flat,stdcall Extrn ExitProcess:Proc Extrn DeleteFileA:Proc extrn MessageBoxA:Proc .data zag db "О.Головач.знищення " test2 db "Tewst2.txt",0 .code Start: CALL DeleteFileA,offset test2 call MessageBoxA,0,offset zag,offset test2,0 call ExitProcess,0 end Start  Лабораторна робота 2с. .586 .model flat,stdcall Extrn ExitProcess:Proc Extrn GetFileAttributesA:Proc Extrn MessageBoxA:Proc .data stud db "Виконав студент О.Головач Отримання атрибутів файлу " test2 db "Tewst2.txt",0 BUF1 db 33 dup(?) .code Start: CALL GetFileAttributesA,offset test2 mov ecx,32 mov esi,offset BUF1 M1: rcl eax,1 mov dl,"0" adc dl,0 ; addition with carry - додавання з переносом mov [esi],dl inc esi dec ecx jnz M1 mov byte ptr [esi],0 call MessageBoxA,0,offset BUF1, offset stud,0 call ExitProcess,0 end Start  Лабораторна робота 2d .586 .model flat,stdcall Extrn ExitProcess:Proc Extrn SetFileAttributesA:Proc Extrn MessageBoxA:Proc .data stud db "Виконав студент О.Головач Приховування файлу " test2 db "Tewst2.txt",0 BUF1 db 33 dup(?) .code Start: CALL SetFileAttributesA,offset test2,111b ;прихований, тільки для читання і системний call MessageBoxA,0,offset BUF1, offset stud,0 call ExitProcess,0 end Start  Лаборотарна робота 2e .586 .model flat,stdcall Extrn ExitProcess:Proc Extrn SetFileAttributesA:Proc Extrn MessageBoxA:Proc .data stud db "Виконав студент О.Головач розкриття файлу " test2 db "Tewst2.txt",0 BUF1 db 33 dup(?) .code Start: CALL SetFileAttributesA,offset test2,0 ; без атрибутів call MessageBoxA,0,offset BUF1, offset stud,0 call ExitProcess,0 end Start  Лабораторна робота 2f .586 .model flat,stdcall Extrn ExitProcess:Proc Extrn GetLogicalDrives:Proc Extrn MessageBoxA:Proc .data stud db "Отримання логічних дисків Виконав студент Олександр Головач ",0 Text2 db "Маска логічних пристроїв: " BUF1 db 33 dup(?) .code Start: CALL GetLogicalDrives mov ecx,32 mov esi,offset BUF1 M1: rcl eax,1 mov dl,"0" adc dl,0 ; addition with carry - додавання з переносом mov [esi],dl inc esi dec ecx jnz M1 mov byte ptr [esi],0 call MessageBoxA,0,offset Text2, offset stud,0 call ExitProcess,0 end Start  Лабораторна робота 2g .586 .model flat,stdcall Extrn ExitProcess:Proc Extrn GetLogicalDriveStringsA:Proc Extrn MessageBoxA:Proc .data S1 db "Студент О.Головач",0 Buf1 db 200 dup(?) .code Start: call GetLogicalDriveStringsA,200,offset Buf1 mov esi,offset Buf1 M1: cmp word ptr [esi],0 jz EXIT1 cmp byte ptr [esi],0 jnz C1 mov byte ptr [esi],"," C1: inc esi jmp M1 EXIT1: call MessageBoxA,0,offset Buf1,offset S1,0 call ExitProcess,0 end Start  Лабораторна робота 2h .586 .model flat,stdcall Extrn ExitProcess:Proc Extrn RemoveDirectoryA:Proc Extrn MessageBoxA:Proc .data S1 db "Студент О.Головач",0 S2 db "Знищуємо каталог " Buf1 db "TEST",0 .code Start: call MessageBoxA,0,offset S2,offset S1,0 call RemoveDirectoryA,offset Buf1 call ExitProcess,0 end Start  Лабораторна робота 3 .386 .model flat,STDCALL extrn CreateFileA:Proc extrn GlobalAlloc:Proc extrn GlobalLock:Proc extrn ReadFile:Proc extrn GetLastError:Proc extrn MessageBoxA:Proc extrn CloseHandle:Proc extrn GlobalUnlock:Proc extrn GlobalFree:Proc extrn ExitProcess:Proc .data title1 db 'Лабораторна робота №3',0 openname db 'Test2.txt',250 dup(0) hFile dd 0 hMemory dd 0 ; Хендл блоку пам’яті pMemory dd 0 ; Адреса блоку пам’яті SizeRead dd 0 MEMSIZE equ 1000000h ; 16 Mb .code Start: push 0 push 0h ; файл з довільними атрибутами push 4h ; відкрити існуючий або створити новий push 0 ; без атрибутів безпеки push 1h ; дозволено спільний доступ по читанню push 80000000h ; читати файл push offset openname ; адреса імені файлу call CreateFileA mov hFile,eax ; отримали хендл файлу push MEMSIZE push 2h + 40h ; GMEM_MOVEABLE + GMEM_ZEROINIT call GlobalAlloc mov hMemory,eax ; отримали хендл блоку пам’яті push hMemory call GlobalLock ; розмістили блок mov pMemory,eax ; та отримали його адресу push 0 push offset SizeRead ; адреса змінної скільки байтів прочитано push MEMSIZE-1 ; скільки байтів можна прочитати push pMemory ; адреса початку блоку push hFile ; хендл файлу call ReadFile ; функція читання файлу push 0 push offset title1 push pMemory ; вивід блоку пам’яті на екран push 0 call MessageBoxA push hFile call CloseHandle ; закрити файл push hMemory call GlobalUnlock ; розблокувати блок пам’яті push hMemory call GlobalFree ; звільнити блок пам’яті push 0 call ExitProcess ; повернення у Windows end Start  Лабораторна робота 3a .386 .model flat,STDCALL extrn CreateFileA:Proc extrn GlobalAlloc:Proc extrn GlobalLock:Proc extrn ReadFile:Proc extrn WriteFile:Proc extrn GetLastError:Proc extrn MessageBoxA:Proc extrn CloseHandle:Proc extrn GlobalUnlock:Proc extrn GlobalFree:Proc extrn ExitProcess:Proc extrn lstrlen:Proc .data title1 db 'Лабораторна робота №3 запис у файл ' openname db 'Test3.txt',250 dup(0) BUF1 db "Запис у файл test3.txt О.Головач",0 hFile dd 0 hMemory dd 0 ; Хендл блоку пам’яті pMemory dd 0 ; Адреса блоку пам’яті SizeRead dd 0 .code Start: push 0 push 0h ; файл з довільними атрибутами push 4h ; відкрити існуючий або створити новий push 0 ; без атрибутів безпеки push 1h ; дозволено спільний доступ по читанню push 40000000h ; писати у файл push offset openname ; адреса імені файлу call CreateFileA mov hFile,eax ; отримали хендл файлу call lstrlen,offset BUF1 ; отримуємо довжину рядка push 0 push offset SizeRead ; адреса змінної скільки байтів прочитано push eax ; скільки байтів можна записати push offset BUF1 ; адреса початку блоку push hFile ; хендл файлу call WriteFile ; функція читання файлу push 0 push offset title1 push offset BUF1 ; вивід блоку пам’яті на екран push 0 call MessageBoxA push hFile call CloseHandle ; закрити файл push 0 call ExitProcess ; повернення у Windows end Start  Лабораторна робота 3b .386 .model flat,STDCALL extrn CreateFileA:Proc extrn GlobalAlloc:Proc extrn GlobalLock:Proc extrn ReadFile:Proc extrn WriteFile:Proc extrn GetLastError:Proc extrn MessageBoxA:Proc extrn CloseHandle:Proc extrn GlobalUnlock:Proc extrn GlobalFree:Proc extrn ExitProcess:Proc extrn lstrlen:Proc extrn SetFilePointer:Proc FILE_BEGIN equ 0 FILE_END equ 2 OPEN_ALWAYS equ 4 .data title1 db 'Лабораторна робота №3 запис у файл зі зміщенням' openname db 'Test3.txt',250 dup(0) TEMP1 dd 0 BUF1 db "Текст для запису у файл test3.txt. Виконав студент О.Головач",0 hFile dd 0 hMemory dd 0 ; Хендл блоку пам’яті pMemory dd 0 ; Адреса блоку пам’яті SizeRead dd 0 .code Start: push 0 push 0h ; файл з довільними атрибутами push OPEN_ALWAYS ; відкрити існуючий або створити новий push 0 ; без атрибутів безпеки push 1h ; дозволено спільний доступ по читанню push 40000000h ; писати файл push offset openname ; адреса імені файлу call CreateFileA mov hFile,eax ; отримали хендл файлу call SetFilePointer,hFile,-6,0,FILE_END call lstrlen,offset BUF1 ; отримуємо довжину рядка push 0 push offset SizeRead ; адреса змінної скільки байтів прочитано push eax ; скільки байтів можна записати push offset BUF1 ; адреса початку блоку push hFile ; хендл файлу call WriteFile ; функція читання файлу push 0 push offset title1 push offset BUF1 ; вивід блоку пам’яті на екран push 0 call MessageBoxA push hFile call CloseHandle ; закрити файл push 0 call ExitProcess ; повернення у Windows end Start  Лабораторна робота 3c .386 .model flat,STDCALL extrn CreateFileA:Proc extrn GlobalAlloc:Proc extrn GlobalLock:Proc extrn ReadFile:Proc extrn WriteFile:Proc extrn GetLastError:Proc extrn MessageBoxA:Proc extrn CloseHandle:Proc extrn GlobalUnlock:Proc extrn GlobalFree:Proc extrn ExitProcess:Proc extrn lstrlen:Proc extrn GetOpenFileNameA:Proc extrn GetCurrentDirectoryA:Proc FILE_BEGIN equ 0 FILE_END equ 2 OPEN_ALWAYS equ 4 ;--------------------------------------------------------------- .data title1 db 'Лабораторна робота №3 вибір файлу ' openname db 'Test3.txt',250 dup(0) TEMP1 dd 0 hFile dd 0 hMemory dd 0 ; Хендл блоку пам’яті pMemory dd 0 ; Адреса блоку пам’яті SizeRead dd 0 ;================================================= S1: FSize dd 76 ; довжина цiєї структури; Howner dd 0 ; вказiвник вiкна-власника або 0; AppHWnd dd 0 ; вказiвник модуля-власника; Filters dd offset filter_tab ; вказiвник на перелiк типiв файлiв; CustFilters dd 0 ; вказiвник на перелiк типiв файлiв якi дозволенi користувачевi; CstFltSize dd 0 ; довжина буферу на який вказує CustFilters; CurFilter dd 3 ; iндекс вибраного фiльтру (1,2,3,...) або 0; CurFileName dd offset openname ; вказiвник на повне iм'я файлу, наприклад, на “С:\dir1\dir2\file.ext”,0; CurFlNmSize dd 512 ; довжина буферу вказаного в CurFileName; CurFile dd 0 ; вказiвник на iм'я файлу з розширенням; CurFlSize dd 0 ; довжина буферу вказаного в CurFile; InitialDir dd offset dir ; вказiвник на каталог файлу або 0 для даного каталога; DlgTitle dd offset titl ; вказiвник на назву вiкна; Flags dd 00h ; тип вiкна, яке вiдкриває файл (може бути 200h); FileOffset dw 0 ; повертає довжину повного шляху, наприклад=13 якщо користувач ввів рядок “С:\dir1\dir2\file.asm”; ExtOffset dw 0 ; змiщення вiд початку рядка до розширення (в даному прикладi =18) або 0 якщо розширення немає; Extension dd 0 ; вказiвник на стандартне розширення, яке буде додано до iменi, якщо розширення немає (або 0); CustData dd 0 ; вказiвник на данi для hook-процедури; HookProc dd 0 ; вказiвник на hook-процедуру, якщо вона дозволена у Flags; TmplateRsc dd 0 ; вказiвник на шаблон ресурсiв, якщо вiн передбачений у Flags; ; додаткові змінні до структури: filter_tab db "Графiчнi файли (*.BMP)",0h,"*.BMP",0 db "Текстовi файли (*.TXT)",0,"*.txt",0 db "Лабораторнi роботи (*.ASM)",0,"*.asm",0 db "Всi типи файлiв (*.*)",0h,"*.*",0,0 titl db "Лабораторна робота № 3",0 ;===================================================== .data? ; неініціалізовані дані (з'являються одразу ж після старту) BUF1 db 2000 dup(?) dir db 260 dup(?) ; dup - повторити .code Start: Call GetCurrentDirectoryA,260,offset dir call GetOpenFileNameA,offset S1 ; вибір файлу push 0 push 0h ; файл з довільними атрибутами push OPEN_ALWAYS ; відкрити існуючий або створити новий push 0 ; без атрибутів безпеки push 1h ; дозволено спільний доступ по читанню push 80000000h ; читати файл push offset openname ; адреса імені файлу call CreateFileA mov hFile,eax ; отримали хендл файлу push 0 push offset SizeRead ; адреса змінної скільки байтів прочитано push 2000 ; скільки байтів можна записати push offset BUF1 ; адреса початку блоку push hFile ; хендл файлу call ReadFile ; функція читання файлу push 0 push offset title1 push offset BUF1 ; вивід блоку пам’яті на екран push 0 call MessageBoxA push hFile call CloseHandle ; закрити файл push 0 call ExitProcess ; повернення у Windows end Start  Лабораторна робота 3d .386 .model flat,STDCALL extrn CreateFileA:Proc extrn GlobalAlloc:Proc extrn GlobalLock:Proc extrn ReadFile:Proc extrn WriteFile:Proc extrn GetLastError:Proc extrn MessageBoxA:Proc extrn CloseHandle:Proc extrn GlobalUnlock:Proc extrn GlobalFree:Proc extrn ExitProcess:Proc extrn lstrlen:Proc extrn GetOpenFileNameA:Proc extrn GetCurrentDirectoryA:Proc extrn GetFileTime:Proc extrn FileTimeToSystemTime:Proc FILE_BEGIN equ 0 FILE_END equ 2 OPEN_ALWAYS equ 4 ;--------------------------------------------------------------- .data title1 db 'Лабораторна робота №3 вибір файлу ' openname db 'Test3.txt',250 dup(0) TEMP1 dd 0 hFile dd 0 hMemory dd 0 ; Хендл блоку пам’яті pMemory dd 0 ; Адреса блоку пам’яті SizeRead dd 0 ;================================================= S1: FSize dd 76 ; довжина цiєї структури; Howner dd 0 ; вказiвник вiкна-власника або 0; AppHWnd dd 0 ; вказiвник модуля-власника; Filters dd offset filter_tab ; вказiвник на перелiк типiв файлiв; CustFilters dd 0 ; вказiвник на перелiк типiв файлiв якi дозволенi користувачевi; CstFltSize dd 0 ; довжина буферу на який вказує CustFilters; CurFilter dd 3 ; iндекс вибраного фiльтру (1,2,3,...) або 0; CurFileName dd offset openname ; вказiвник на повне iм'я файлу, наприклад, на “С:\dir1\dir2\file.ext”,0; CurFlNmSize dd 512 ; довжина буферу вказаного в CurFileName; CurFile dd 0 ; вказiвник на iм'я файлу з розширенням; CurFlSize dd 0 ; довжина буферу вказаного в CurFile; InitialDir dd offset dir ; вказiвник на каталог файлу або 0 для даного каталога; DlgTitle dd offset titl ; вказiвник на назву вiкна; Flags dd 00h ; тип вiкна, яке вiдкриває файл (може бути 200h); FileOffset dw 0 ; повертає довжину повного шляху, наприклад=13 якщо користувач ввів рядок “С:\dir1\dir2\file.asm”; ExtOffset dw 0 ; змiщення вiд початку рядка до розширення (в даному прикладi =18) або 0 якщо розширення немає; Extension dd 0 ; вказiвник на стандартне розширення, яке буде додано до iменi, якщо розширення немає (або 0); CustData dd 0 ; вказiвник на данi для hook-процедури; HookProc dd 0 ; вказiвник на hook-процедуру, якщо вона дозволена у Flags; TmplateRsc dd 0 ; вказiвник на шаблон ресурсiв, якщо вiн передбачений у Flags; ; додаткові змінні до структури: filter_tab db "Графiчнi файли (*.BMP)",0h,"*.BMP",0 db "Текстовi файли (*.TXT)",0,"*.txt",0 db "Лабораторнi роботи (*.ASM)",0,"*.asm",0 db "Всi типи файлiв (*.*)",0h,"*.*",0,0 titl db "Лабораторна робота № 3 Виконав Олександр Головач",0 ;---------------------------------------------- FORMAT_STRING: db ' Системний час:',0dh,0ah,0dh,0ah db ' Рiк: %ld',0dh,0ah db ' Мiсяць: %ld',0dh,0ah db ' День тижня: %ld',0dh,0ah db ' Число: %ld',0dh,0ah db ' Година: %ld',0dh,0ah db ' Хвилин: %ld',0dh,0ah db 0 Time_struc: wYear dw 0 ; Рік wMonth dw 0 ; Місяць wDayOfWeek dw 0 ; День тиждня wDay dw 0 ; Число wHour dw 0 ; Година wMinute dw 0 ; Хвилина wSecond dw 0 ; Секунда wMilliseconds dw 0 ; Мілісекунда Time_title1 db ' Час створення файлу (Олександр Головач)',0 Time_title2 db ' Час останнього доступу (Олександр Головач)',0 Time_title3 db ' Час останнього запису (Олександр Головач)',0 TIME_STRING db 2000 dup (0) ;============================================================== ;===================================================== .data? ; неініціалізовані дані (з'являються одразу ж після старту) BUF1 db 2000 dup(?) dir db 260 dup(?) ; dup - повторити CreationTime dq ? LastAccessTime dq ? LastWriteTime dq ? .code ; Start: Call GetCurrentDirectoryA,260,offset dir call GetOpenFileNameA,offset S1 ; вибір файлу push 0 push 0h ; файл з довільними атрибутами push OPEN_ALWAYS ; відкрити існуючий або створити новий push 0 ; без атрибутів безпеки push 1h ; дозволено спільний доступ по читанню push 80000000h ; читати файл push offset openname ; адреса імені файлу call CreateFileA mov hFile,eax ; отримали хендл файлу push 0 push offset SizeRead ; адреса змінної скільки байтів прочитано push 2000 ; скільки байтів можна записати push offset BUF1 ; адреса початку блоку push hFile ; хендл файлу call ReadFile ; функція читання файлу push 0 push offset title1 push offset BUF1 ; вивід блоку пам’яті на екран push 0 call MessageBoxA call GetFileTime,hFile,offset CreationTime, offset LastAccessTime,offset LastWriteTime call FileTimeToSystemTime, offset CreationTime,offset Time_struc call PRINT_TIME, offset Time_title1 call FileTimeToSystemTime, offset LastAccessTime,offset Time_struc call PRINT_TIME, offset Time_title2 call FileTimeToSystemTime, offset LastWriteTime,offset Time_struc call PRINT_TIME, offset Time_title3 push hFile call CloseHandle ; закрити файл push 0 call ExitProcess ; повернення у Windows ;================================================= Extrn _wsprintfA:Proc PRINT_TIME proc P1:dword xor eax,eax ; EAX=0 mov ax,wMinute push eax ; наступні параметри з стеку не забираються mov ax,wHour push eax mov ax,wDay push eax mov ax,wDayOfWeek push eax mov ax,wMonth push eax mov ax,wYear push eax push offset FORMAT_STRING push offset TIME_STRING call _wsprintfA ; Вивід параметрів add esp,4*8 ; та очищення стеку push 0h push P1 push offset TIME_STRING push 0 call MessageBoxA ret endp end Start      Лабораторна робота 3e .386 .model flat,STDCALL extrn CreateFileA:Proc extrn GlobalAlloc:Proc extrn GlobalLock:Proc extrn ReadFile:Proc extrn WriteFile:Proc extrn GetLastError:Proc extrn MessageBoxA:Proc extrn CloseHandle:Proc extrn GlobalUnlock:Proc extrn GlobalFree:Proc extrn ExitProcess:Proc extrn lstrlen:Proc extrn GetOpenFileNameA:Proc extrn GetCurrentDirectoryA:Proc extrn ShellExecuteA:Proc FILE_BEGIN equ 0 FILE_END equ 2 OPEN_ALWAYS equ 4 ;--------------------------------------------------------------- .data title1 db 'Лабораторна робота №3 вибір файлу ' openname db 'Test3.txt',250 dup(0) TEMP1 dd 0 hFile dd 0 hMemory dd 0 ; Хендл блоку пам’яті pMemory dd 0 ; Адреса блоку пам’яті SizeRead dd 0 ;================================================= S1: FSize dd 76 ; довжина цiєї структури; Howner dd 0 ; вказiвник вiкна-власника або 0; AppHWnd dd 0 ; вказiвник модуля-власника; Filters dd offset filter_tab ; вказiвник на перелiк типiв файлiв; CustFilters dd 0 ; вказiвник на перелiк типiв файлiв якi дозволенi користувачевi; CstFltSize dd 0 ; довжина буферу на який вказує CustFilters; CurFilter dd 3 ; iндекс вибраного фiльтру (1,2,3,...) або 0; CurFileName dd offset openname ; вказiвник на повне iм'я файлу, наприклад, на “С:\dir1\dir2\file.ext”,0; CurFlNmSize dd 512 ; довжина буферу вказаного в CurFileName; CurFile dd 0 ; вказiвник на iм'я файлу з розширенням; CurFlSize dd 0 ; довжина буферу вказаного в CurFile; InitialDir dd offset dir ; вказiвник на каталог файлу або 0 для даного каталога; DlgTitle dd offset titl ; вказiвник на назву вiкна; Flags dd 00h ; тип вiкна, яке вiдкриває файл (може бути 200h); FileOffset dw 0 ; повертає довжину повного шляху, наприклад=13 якщо користувач ввів рядок “С:\dir1
Антиботан аватар за замовчуванням

31.03.2013 01:03-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!