Уроки Iczelion'а


         

вывод по Win32 имеет значительное


Файловый ввод/ вывод по Win32 имеет значительное сходство с тем, как это делалось под DOS. Все требуемые шаги точно такие же. Вам только нужно изменить прерывания на вызовы API функций.

  1. Откройте или создайте файл функцией CreateFile. Эта функция очень универсальна: не считая файла, она может открывать компорты, пайпы, дисковые приводы и консоли. В случае успеха она возвращает хэндл файла или устройства. Затем вы можете использовать этот хэндл, чтобы выполнить определенные действия над файлом или устройством.

  2. Переместите файловый указатель в желаемое местоположение функцией SetFilePointer.

  3. Проведите операцию чтения или записи с помощью вызова ReadFile или WriteFile. Перед этим вы должны зарезервировать достаточно большой блок памяти для данных.

  4. Закройте файл с помощью CloseHandle. Эта функции принимает хэндл файла.

Содержание:
Приведенная ниже программа отображает открытый файловое диалоговое окно. Оно позволяет пользователю использовать текстовый файл, чтобы открыть и показать содержимое файла в клиентской области edit control'а. Пользователь может изменять текст в edit control'е по своему усмотрению, а затем может сохранить содержимое в файл.
.386 .model flat,stdcall
option casemap:none WinMain proto :DWORD,:DWORD,:DWORD,:DWORD include \masm32\include\windows.inc include \masm32\include\user32.inc
include \masm32\include\kernel32.inc include \masm32\include\comdlg32.inc includelib \masm32\lib\user32.lib includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\comdlg32.lib
.const
IDM_OPEN equ 1 IDM_SAVE equ 2 IDM_EXIT equ 3 MAXSIZE equ 260
MEMSIZE equ 65535
EditID equ 1 ; ID of the edit control
.data ClassName db "Win32ASMEditClass",0
AppName db "Win32 ASM Edit",0 EditClass db "edit",0 MenuName db "FirstMenu",0 ofn OPENFILENAME <>
FilterString db "All Files",0,"*.*",0 db "Text Files",0,"*.txt",0,0 buffer db MAXSIZE dup(0)
.data? hInstance HINSTANCE ? CommandLine LPSTR ?

Содержание  Назад  Вперед





Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий