Поиск:

Ответ в темуСоздание новой темы Создание опроса
> createfile 
:(
    Опции темы
Gamov
Дата 4.3.2008, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 4.3.2008

Репутация: нет
Всего: нет



нужно написать прогу: данные копируются из созданного уже файла в другой(создаваемый мной). вот то что у меня получилось  smile 
не работает  smile  уважаемые гуру объясните почему!...

.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


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

file_name DB "d:\MyFile.dat",0

.data?
hFile HANDLE ?
SizeReadWrite DWORD ?

.code

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

NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,\
                                   NULL
                      mov hFile,eax
     
invoke SetFilePointer,hFile,10h,0h,FILE_BEGIN

invoke WriteFile,hFile,ADDR bufer,2h,ADDR SizeReadWrite,0h   ;2h->MEMSIZE

                       invoke CloseHandle,hFile
                     

end start
PM MAIL   Вверх
dumb
Дата 4.3.2008, 16:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 7
Всего: 158



Цитата(Gamov @  4.3.2008,  14:42 Найти цитируемый пост)
объясните почему
потому что "у тебя получилось" только "проредить" исходник - понять что-то ты и не пытался. с такими вопросами следует обращаться в "Центр помощи".

практическое(но не учебное) решение поставленной тобою задачи:
Код

.386
.model flat, stdcall
option casemap :none
include \masm32\INCLUDE\kernel32.inc
includelib \masm32\LIB\kernel32.lib
.data
file_in db "d:\file.txt",0
file_out db "d:\myfile.txt"
.code
start:
invoke CopyFile, ADDR file_in, ADDR file_out, 0
invoke ExitProcess,0
end start

PM MAIL   Вверх
Gamov
Дата 4.3.2008, 17:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 4.3.2008

Репутация: нет
Всего: нет



 smile  хех...насчет проредить - в точку! но вот понять я пытался  smile  
до этого прогал контроллеры (типа зажечь нужные диоды и.т.п),а с серьезным программированием дел не имел. Решение оказалось очень простое, а я думал что все гораздо сложнее. В следующий раз буду внимательнее искать функции в апи-справочнике. Спасибо.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm для начинающих"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm для начинающих | Следующая тема »


 




[ Время генерации скрипта: 0.0444 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.