Показать сообщение отдельно

  #212  
Старый 03.03.2008, 12:36
Uliss
Новичок
Регистрация: 03.03.2008
Сообщений: 1
С нами: 9574004

Репутация: 0
По умолчанию

нужно написать прогу:создается файл(file1.txt) и туда из уже существуещего файла к примеру file.txt копируется текст. Написать нужно на апи используя асм. я раньше программировал на асм для контроллеров чуть-чуть, а с API познакомился совсем недавно так что не гнобите если немного чушь
Код:
.386
.model flat, stdcall
option casemap:none
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

  MEMSIZE equ 65535

.data
 
memor DB "d:\file.txt"

file_name DB "d:\file1.txt",0

.data?
hFile HANDLE ?
hMemory HANDLE ?
pMemory DWORD ?
SizeReadWrite DWORD ?
param HANDLE ?   
.code
start:
           
invoke OpenFile,ADDR memor,NULL,OF_READWRITE 

mov param,eax

invoke CreateFile,ADDR file_name,\
                               GENERIC_READ or GENERIC_WRITE ,\
                               FILE_SHARE_READ or FILE_SHARE_WRITE,\

   NULL,OPEN_EXISTING,FILE_ATTRIBUTE_ARCHIVE,\
                                   NULL
                       mov hFile,eax

invoke GlobalAlloc,GMEM_MOVEABLE or GMEM_ZEROINIT,MEMSIZE

                       mov  hMemory,eax

invoke GlobalLock,hMemory

                       mov  pMemory,eax
          
invoke SendMessage,param,WM_GETTEXT,MEMSIZE-1,pMemory

invoke WriteFile,hFile,pMemory,MEMSIZE,ADDR SizeReadWrite,NULL

                       invoke CloseHandle,hFile
                       invoke GlobalUnlock,pMemory
                       invoke GlobalFree,hMemory

end start

Последний раз редактировалось De-visible; 29.04.2008 в 01:01..
 
Ответить с цитированием