• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Assembler kompilacja

Object Storage Arubacloud
0 głosów
1,086 wizyt
pytanie zadane 24 października 2017 w Assembler przez Frendom Pasjonat (18,900 p.)

Czołem, mam mały problem z kompilacją pliku.

Zawartość pliku do skompilowania:

;"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64\ml64" %1.asm /Zd  /Zi /link /subsystem:console /defaultlib:kernel32.lib /defaultlib:user32.lib /entry:Start

EXTRN GetStdHandle: PROC
EXTRN WriteFile:    PROC
EXTRN lstrlen:      PROC
EXTRN ExitProcess:  PROC

.DATA

    hFile        QWORD 0
    msglen       DWORD 0
    BytesWritten DWORD 0
    msg          BYTE  "Hello x64 World!", 13, 10, 0

.CODE
Start PROC

	 ;int 3              ; breakpoint for debugger

        sub rsp, 28h

        lea rcx, msg
        call lstrlen
        mov msglen, eax

	 mov ecx, -11        ; STD_OUTPUT
	 call GetStdHandle
        mov hFile, rax

        lea r9, BytesWritten
       	 mov r8d, msglen
	 lea rdx, msg
        mov rcx, hFile
	 call WriteFile

	 xor ecx, ecx        ; exit code = 0
	 call ExitProcess
Start ENDP

END

;link /subsystem:console /nodefaultlib /entry:mStart

Plik asm.bat:

@rem call "%ProgramFiles(x86)%\Microsoft Visual Studio 11.0\VC\bin\amd64\vcvars64.bat"
@rem call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64\vcvarsall.bat" x64
@rem "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\amd64\ml64" %1.asm /Zd  /Zi /link /subsystem:windows /defaultlib:kernel32.lib /defaultlib:user32.lib /entry:Start
"C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\amd64\ml64" %1.asm /Zd  /Zi /link /subsystem:console /defaultlib:kernel32.lib /defaultlib:user32.lib /entry:Start
@rem "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\amd64\ml64" %1.asm /Zd  /Zi /link /subsystem:console /defaultlib:kernel32.lib /defaultlib:user32.lib /defaultlib:msvcrt.lib /entry:Start

:end

Po wpisaniu w konsoli asm nazwa_pliku(tak, folder jest poprawny), wyskakuje komunikat:

"C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\am
d64\ml64" write.asm /Zd  /Zi /link /subsystem:console /defaultlib:kernel32.lib /defaultlib:user32.lib /entry:Start
'"C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\amd64\ml64"' is not recognized as an internal or external command, operable program or batch file.

 

Dorzuciłem do swojego folderu pliku kernel i user, nawet w pliku asm.bat zmieniłem wersje na 11.0, jednak po kompilacji nadal nic się nie dzieje. Ma ktoś możę jakiś pomysł co jeszcze można tutaj zrobić?

 

1 odpowiedź

0 głosów
odpowiedź 24 października 2017 przez plucins Stary wyjadacz (11,110 p.)
obawiam się, że w samej konsoli tego nie odpalisz. Ja osobiście do assemblera używałem dosboxa.
komentarz 25 października 2017 przez Frendom Pasjonat (18,900 p.)
Wlasnie problem jest tutaj, ze na zajeciach wszystko dzialalo :D

Podobne pytania

0 głosów
0 odpowiedzi 115 wizyt
pytanie zadane 14 stycznia 2017 w Assembler przez Jędrzej Dembowski Użytkownik (740 p.)
0 głosów
0 odpowiedzi 805 wizyt
pytanie zadane 22 marca 2017 w Assembler przez bamboleo320 Początkujący (450 p.)
0 głosów
1 odpowiedź 2,085 wizyt
pytanie zadane 1 listopada 2017 w C i C++ przez Jakub 0 Pasjonat (23,120 p.)

92,572 zapytań

141,423 odpowiedzi

319,645 komentarzy

61,959 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...