Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.06.2017, 20:56   #1
fo,wf
Пользователь
 
Регистрация: 16.06.2017
Сообщений: 22
Вопрос fasm гоняет CreateFile к CreateFileA и обр.

хочу сделать прогу которая запис. в system. bat (0б. ) слово "start" (фасм вин 7 32
)пишу:


include 'win32ax. inc'
start:
invoke CreateFile, 'c:/system. bat', GENERIC_ALL,; здесь забыл что писал, но впрошлом оно созд. файл

mov dword(handle), eax; не нашел квадратные, я на андр.
invoke WriteFile, (handle),mec, 5, 0, 0
mec db 'start'

теперь собственно проблема: оно ругается "label CreateFile dword at CreateFile" по своей не опытности я изменял его нс CreateFileA оно опять ругается что не знает такого, на WriteFile не ругается, опять же (по неопытности) я импортировал кэрнел32. длл и юзер32. длл вроде не ругалось на CreateFileA но при запуске оно говорит что это вообще не винды 32. Может кто-то подсказать или как надо написать?
fo,wf вне форума Ответить с цитированием
Старый 20.06.2017, 21:58   #2
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

fo,wf
Зачем для обычной записи в файл использовать громадную API 'CreateFile'?
Для работы с файлами можно например использовать '_lwrite', которая намного проще:
Код:
format   PE Console 4.0
include  'win32a.inc'
include  'api\kernel32.inc'
entry    start

section '.data' data readable writeable
;------
fName     db  'c:\system.txt',0        ; имя файла
buff      db  'start'                  ; текст для записи
len       =   $ - buff                 ; длина текста
handle    dd  0                        ; дескриптор файла

section '.text' code readable executable
;------
start:  invoke  _lopen, fName, 1               ; открыть файл. 1 = R\W
        mov     [handle],eax                   ;   ..запомним его дескриптор
        invoke  _lwrite, [handle], buff, len   ; запись в файл
        invoke  _lclose, [handle]              ; закрыть файл

        invoke  ExitProcess, 0                 ; на выход!

;пппппппппппппппппппппппппппппппппппп
section '.idata' import data readable

  library kernel, 'KERNEL32.DLL'
  import  kernel,\                     ; API для импорта из кернел32.
             _lopen,'_lopen',\
             _lwrite,'_lwrite',\
             _lclose,'_lclose',\
              ExitProcess, 'ExitProcess'
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 21.06.2017, 18:46   #3
fo,wf
Пользователь
 
Регистрация: 16.06.2017
Сообщений: 22
По умолчанию

R71MT, я просто забыл поставиь". end start", но оно всё равно не работает., даже если поставлю.
[color="dark red]"Зачем для обычной записи в файл использовать громадную API 'CreateFile'?
Для работы с файлами можно например использовать '_lwrite', которая намного проще:"[/color] - а о таком я даже и не слышал. А вообще я хотел создать вирус полуБат. но в моём коде это просто где я столкнулся с проблемой. можеш дать книги или тому подобное, где ты это узнал?
помоги самоучьке, мои ошибки даже для новичька немного тупые.

Последний раз редактировалось fo,wf; 21.06.2017 в 18:49.
fo,wf вне форума Ответить с цитированием
Старый 21.06.2017, 21:01   #4
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

Цитата:
Сообщение от R71MT Посмотреть сообщение
громадную API 'CreateFile'
Вообще-то _lwrite это обертка над CreateFile, которая оставлена для совместимости с win16 приложениями.
waleri вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вычислительная математика и Структуры и алгоритмы обр. данных ILLI Фриланс 5 08.02.2014 14:18
Перехват CreateFileA (Delphi) Zer0 Win Api 1 01.08.2012 21:51
Чем отличаеться fasm от fasm editor&? TotKtoNado Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 5 07.11.2011 17:00
C++ Builder 6 обр.версия GreenDan Свободное общение 4 29.08.2008 16:45