Проги сс кодом Asm-порядок компиляции

Тема в разделе "WASM.BEGINNERS", создана пользователем gross, 9 фев 2007.

  1. gross

    gross New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2007
    Сообщения:
    6
    Есть прога писаная на асамблере с расширением *.ASM код компиляции кода на выполнение! Зарание спосибо всем кто приймет участие в обсуждении
     
  2. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    Сначала нужно установить что за ассемблер: masm, tasm, fasm, nasm, ..., если вообще под Win32, DOS, ... В общем, показывай фрагмент кода для опознания.
     
  3. gross

    gross New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2007
    Сообщения:
    6
    сам код фасм вот его кусок
    Код (Text):
    1.  start:     mov     [ofn.lStructSize],76
    2.         mov     [ofn.nMaxFile],256
    3.         mov     [ofn.lpstrFile],fn
    4.         mov     [ofn.lpstrFilter],bst
    5.         mov     [ofn.nFilterIndex],1
    6.         mov     [ofn.Flags],OFN_FILEMUSTEXIST + OFN_PATHMUSTEXIST
    7.         invoke  GetOpenFileName,ofn
    8.         test    eax,eax
    9.         jz      exit
    10.         invoke  CreateFile,fn,GENERIC_READ,0,0,OPEN_EXISTING,0,0
    11.         cmp     eax,INVALID_HANDLE_VALUE
    12.         jz      exit
    13.         mov     [hbst],eax
    14.         mov     [ofn.lpstrFilter],txt
    15.         mov     [ofn.lpstrDefExt],def
    16.         mov     [ofn.Flags],OFN_OVERWRITEPROMPT + OFN_PATHMUSTEXIST
    17.         invoke  GetSaveFileName,ofn
    18.         test    eax,eax
    19.         jz      ch1
    20.         invoke  CreateFile,fn,GENERIC_WRITE,0,0,CREATE_ALWAYS,0,0
    21.         cmp     eax,INVALID_HANDLE_VALUE
    22.         jz      ch1
    23.         mov     [htxt],eax
     
  4. Mikl_

    Mikl_ New Member

    Публикаций:
    0
    Регистрация:
    14 ноя 2006
    Сообщения:
    907
    Честно говоря я понял автора двояко:
    1) самотранслирующаяся программа (взято из Пирогова "Ассемблер для Windows" )
    2) самотрансляция любого asm-файла при клике на нем или по нажатию Enter
    связываем файлы с расширением asm с bat следующего содержания
    Код (Text):
    1. cls
    2. if exist %1.exe del %1.exe
    3. if not exist %1.rc goto over1
    4. rc /v %1.rc
    5. c:\masm32\bin\cvtres /machine:ix86 %1.res
    6. c:\masm32\bin\ml /c /Cp /Gz /Ic:\masm32\include /coff /nologo %1.asm
    7. if errorlevel 1 goto TheEnd
    8. c:\masm32\bin\link1 /SUBSYSTEM:WINDOWS /ALIGN:16 /MERGE:.data=.text /LIBPATH:c:\masm32\lib /NOLOGO %1.obj %1.res
    9. if errorlevel 1 goto TheEnd
    10. del %1.res
    11. goto TheEnd
    12. :over1
    13. c:\masm32\bin\ml /c /Cp /Gz /Ic:\masm32\include /coff /nologo %1.asm
    14. if errorlevel 1 goto TheEnd
    15. c:\masm32\bin\link /SUBSYSTEM:WINDOWS /ALIGN:16 /MERGE:.data=.text /LIBPATH:c:\masm32\lib /NOLOGO %1.obj
    16. :TheEnd
    17. if exist %1.obj del %1.obj
    ml с ключами /Cp и /Gz дают возможность не писать в каждом asm строку
    Код (Text):
    1. stdcall
    2. option casemap:none
    ключ /I позволяет написать include windows.inc
    вместо include c:\masm32\include\windows.inc
    ключ /LIBPATH позволяет написать includelib gdi32.lib
    вместо includelib c:\masm32\lib\gdi32.lib
    И еще по батникам есть хорошая статья http://www.rsdn.ru/article/winshell/batanyca.xml
     
  5. gross

    gross New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2007
    Сообщения:
    6
    Mikl_
    спосибо за совет дело втом что эта прога должна расшифровывать файл зашифрованый другой кодировкой немогу просто понять процес запуска почитав понял что фасм должен запускаться с командной строки и заним должен следовать исполняимый файл но почемуто у меня этот процес несробатывает есть эта прога в ней 2 файла с расширениями .asm .exe
    Может какойто другой процес старта доолжен быть
     
  6. Mikl_

    Mikl_ New Member

    Публикаций:
    0
    Регистрация:
    14 ноя 2006
    Сообщения:
    907
    gross
    Заархивируй эту свою программу и файлы с расширениями .asm .exe, которые к ней прилагаются и приатач к своему сообщению, чего голову просто так ломать, посмотрим, что это за зверь и что ему нужно
     
  7. gross

    gross New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2007
    Сообщения:
    6
    вот тот зверь что ты просил посибо за помощ
     
  8. Mikl_

    Mikl_ New Member

    Публикаций:
    0
    Регистрация:
    14 ноя 2006
    Сообщения:
    907
    gross
    Да вам, голубчик, нужно было обратится в раздел WASM.CRYPTO, попробую разобраться к понедельнику, только причем тут командная строка? Ведь exe у тебя уже есть
     
  9. gross

    gross New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2007
    Сообщения:
    6
    ну ясно .exe уже играет роль командной строки сама програма ещё должна работать с динамически изменяющимся кодом после того как код подобран идет расшифровка .bst сам код постоянно миняеться
     
  10. gross

    gross New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2007
    Сообщения:
    6
    Всё тему можно считать закрытой все сделано блогадарю всех кто принимал в этом топике участие !!! :)