21 видео урок по Ассемблеру (Assembler) - не могу скомпилировать первый проект

Узнай цену своей работы

Формулировка задачи:

Всем привет. Видео по ассемблеру знакомое наверно многим от нашего брата http://exevideo.net/ BAZRUDA, но не могу понять, почему не компилируется первый проект!? Все пути и файлы написаны идентично как в видео. Стоит Win7 x64, masm32 в корне диска C. Сам автор курса пропал из аськи года полтора назад, а курс висит тяжёлой ношей. Вот ссылка на видео http://exevideo.net/?url=ru/video/assembler/00-MASTER-PRO.html Вот файлы листингов:

Trans.bat

@ c:\masm32\bin\ml.exe /coff /c .\ISHODNIC\Pirat.asm

Compile.bat

@ if EXIST Pirat.obj c:\masm32\bin\link.exe /subsystem:WINDOWS .\Pirat.obj Вся иерархия папок соблюдена! Подскажите, пожалуйста, в чём проблема!! Буду очень признателен.
Пробовал компилировать по описаниям из книг и разных сайтов, тоже не получилось кроме вот этого проекта http://kaimi.ru/2010/08/masm32-начало/
Вот сам листинг Pirat.asm файла:
    .386
    .model flat,stdcall
 option casemap:none
            include C:masm32\include\windows.inc
            include C:masm32\include\kernel32.inc
            include C:masm32\include\user32.inc
            include C:masm32\include\advapi32.inc
            
            includelib C:masm32\lib\comctl32.lib
            includelib C:masm32\lib\user32.lib
            includelib C:masm32\lib\gdi32.lib
            includelib C:masm32\lib\kernel32.lib
            includelib C:masm32\lib\user32.lib
            includelib C:masm32\lib\advapi32.lib
;###############################################################
;data-data-data-data-data-data-data-data-data-data-data-    PROC
;-----------------------------------------
.DATA
HINST DWORD 0
strPirat DB "PRIVET PIRAT",0
 
;###############################################################
;data-data-data-data-data-data-data-data-data-data-data-    PROC
;-----------------------------------------
.CODE
START:
 
    invoke MessageBox, 0,addr strPirat, addr strPirat  , 0
EXIT:
    invoke      ExitProcess     ,   0
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
END START
Запускаю Trans.bat - ни чего не создает, также и Compile.bat -тоже ничего не происходит

Решение задачи: «21 видео урок по Ассемблеру (Assembler) - не могу скомпилировать первый проект»

textual
Листинг программы
.386
.model flat,stdcall
option casemap:none
include C:\masm32\include\windows.inc
include C:\masm32\include\kernel32.inc
include C:\masm32\include\user32.inc
include C:\masm32\include\advapi32.inc
 
includelib C:\masm32\lib\comctl32.lib
includelib C:\masm32\lib\user32.lib
includelib C:\masm32\lib\gdi32.lib
includelib C:\masm32\lib\kernel32.lib
includelib C:\masm32\lib\user32.lib
includelib C:\masm32\lib\advapi32.lib
;########################################################### ####
;data-data-data-data-data-data-data-data-data-data-data-    PROC
;-----------------------------------------
.DATA
HINST DWORD 0
strPirat DB "PRIVET PIRAT",0
 
;########################################################### ####
;data-data-data-data-data-data-data-data-data-data-data-    PROC
;-----------------------------------------
.CODE
START:
 
invoke MessageBox, 0,addr strPirat, addr strPirat , 0
EXIT:
invoke   ExitProcess     ,  0
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++
END START

Объяснение кода листинга программы

  1. Переменная HINST объявлена как DWORD со значением 0.
  2. Переменная strPirat объявлена как DB PRIVET PIRAT,0.
  3. Процедура START инициализирует MessageBox с аргументами 0, адрес strPirat, адрес strPirat, 0.
  4. Процедура EXIT вызывает ExitProcess с аргументом 0.
  5. Процедура END указывает на окончание программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4 из 5
Похожие ответы