Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с файлами 
:(
    Опции темы
ring0D
Дата 5.12.2005, 14:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Здравствуйте, подскажите пожалуйста какими API пользоваться для работы с файлами (интересует создание/добавление/чтение на простом уровне). И как этими API правильно пользоваться ? Помогите пожалуйста... В Delphi было так просто...
PM MAIL   Вверх
Chingachguk
Дата 5.12.2005, 18:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1232
Регистрация: 25.3.2002
Где: Москва

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



В асме все еще проще, если ты используешь WinApi.

Например:


Цитата


;
; Это начало небольшой консольной проги, которая работает с файликом
; свои результаты она сбрасывает в лог и на консоль одновременно
;


;
; Получаем хэндл консоли
;
invoke GetStdHandle,STD_OUTPUT_HANDLE
  mov  dword ptr hConsole,eax

;
; Пробуем открыть файл лога (дозапись)
;
.data
LogFileName  db "grandemu.log",0
.data?
LogDescr      dd ?
.code
  invoke CreateFile,offset LogFileName,GENERIC_WRITE,FILE_SHARE_WRITE+FILE_SHARE_READ,\
      0,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0
  mov  LogDescr,eax          ; Save file descriptor
  inc  eax
  jnz  @@LogFileOpen

;
; Файл не открылся - его еще нет
; Create new log
;
  invoke CreateFile,offset LogFileName,GENERIC_WRITE,FILE_SHARE_WRITE+FILE_SHARE_READ,\
      0,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,0
  mov  LogDescr,eax          ; Save file descriptor
  inc  eax
  jnz  @@LogFileOpen 
.data
OpenErrorMsg db "Log file (grandemu.log) not created !",0Ah,0
.code
  push offset OpenErrorMsg
  call Write_Log
  jmp  Exit
@@LogFileOpen:

; Устанавливаем указатель в конец файла (только что открытого)
  invoke SetFilePointer,LogDescr,0,NULL,FILE_END


Более подробно смотри на wasm.ru, примеры в комплекте MASM32.



--------------------
I don't like the drugs (but the drugs like me). M.Manson.
PM MAIL ICQ   Вверх
Гость_Сергей
Дата 7.12.2005, 19:25 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











А как именно дописать в файл ? По-моему тут этого нет. В Дельфях было намного проще !
  Вверх
Chingachguk
Дата 7.12.2005, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1232
Регистрация: 25.3.2002
Где: Москва

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



Цитата
В Дельфях было намного проще !


Покажи мне как в Дельфях на win API делается это "намного проще".

А написать подпрограмму "AddBufferToEndOfFile" можно и на асме. Один раз написал - и все то же самое.

Это сообщение отредактировал(а) Chingachguk - 7.12.2005, 19:58


--------------------
I don't like the drugs (but the drugs like me). M.Manson.
PM MAIL ICQ   Вверх
wiskas
Дата 22.12.2005, 02:33 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











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

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

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


 




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


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

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