UltraEdit Win32ASM 실험 환경 구축
6454 단어 Win32ASM 실험 환경UltraEdit 구축
2.설정(1)문법 착색:UltraEdit 의 설치 디 렉 터 리 에 wordfile.txt 파일 이 있 습 니 다.문법 착색 설정 파일 입 니 다.UltraEdit 기본 값 은 masm 문법 에 착색 되 지 않 습 니 다.착색 을 지원 하 는 파일 을 다운로드 해 야 합 니 다.http://www.ultraedit.com/files/wf/masm.txt다운로드 가 끝 난 후에 우 리 는 그것 을 원래 의 wordfile.txt 끝부분 에 추가 합 니 다.여기 서 고 쳐 야 할 부분 이 있 습 니 다.바로 처음에'/L20'입 니 다.L 은 Language 의 뜻 일 것 입 니 다.20 은 몇 번 째(위 두 마디 는 제 가 맞 춘 것 입 니 다)를 말 합 니 다.UltraEdit 는 한 번 에 20 가지 문법 착색 만 지원 합 니 다.그 러 니 울 트 라 에 디 트 가 움 직 이지 않 았 다 면 기본 값 으로 해도 됩 니 다.치밀 하 게 하려 면'/Lxx'(xx 가 이전'/Lxx-1'에 이 어)로 바 꾸 고 어쨌든 중복 만 하지 않 으 면 된다.2)"사용자 도구"설정 스 크 립 트:"Go.bat"라 는 일괄 처리 파일 을 새로 만 듭 니 다.내용 은 다음 과 같 습 니 다(lib,include,path 경 로 는 실제 상황 에 따라 수정 하 십시오).
[csharp] view plain copy print ?
@echo off
rem Simply Complie, Build and Execute Win32ASM programs.
rem Author: t0nsha
set filename="%~n1"
if not exist %filename%.asm (
echo Error! The asm source file: "%filename:"=%.asm" does not exist!
echo Usage: %~n0 filename[.asm]
pause
goto :eof
)
if not exist "D:/masm32/bin/ML.exe" (
echo Error! Can't find "D:/masm32/bin/ML.exe" !
echo Please confirm you've already installed masm32v9r at the root of the d:/
pause
goto :eof
)
set include=D:/masm32/include;%include%
set lib=D:/masm32/lib;%lib%
set path=D:/masm32/bin;%PATH%
set mlOption=/c /coff /Cp /Zi /nologo
set linkOption=/SUBSYSTEM:WINDOWS /DEBUG /DEBUGTYPE:CV /NOLOGO
set linkfile=%filename%.obj
call :Clean %filename% exe pdb
ml %mlOption% %filename%.asm
if exist %filename%.rc (
rc %filename%.rc
set linkfile=%linkfile% %filename%.res
)
rem To share ".data?" section, please add: /section:.bss,S
if exist %filename%.def set linkOption=%linkOption% /DLL /DEF:%filename%.def
link %linkOption% %linkfile%
rem Ext INFO: http://support.microsoft.com/default.aspx?scid=kb;en-us;Q132340
call :Clean %filename% obj res ilk exp
if exist %filename%.exe start /b cmd /c %filename%.exe
echo on & goto :eof
:Clean
if"%2"==""goto :CleanEnd
if exist %filename%.%2 del %filename%.%2
shift
goto Clean
:CleanEnd
@echo off
rem Simply Complie, Build and Execute Win32ASM programs.
rem Author: t0nsha<liaodunxia{at}gmail.com>, Update@20080526
set filename="%~n1"
if not exist %filename%.asm (
echo Error! The asm source file: "%filename:"=%.asm" does not exist!
echo Usage: %~n0 filename[.asm]
pause
goto :eof
)
if not exist "D:/masm32/bin/ML.exe" (
echo Error! Can't find "D:/masm32/bin/ML.exe" !
echo Please confirm you've already installed masm32v9r at the root of the d:/
pause
goto :eof
)
set include=D:/masm32/include;%include%
set lib=D:/masm32/lib;%lib%
set path=D:/masm32/bin;%PATH%
set mlOption=/c /coff /Cp /Zi /nologo
set linkOption=/SUBSYSTEM:WINDOWS /DEBUG /DEBUGTYPE:CV /NOLOGO
set linkfile=%filename%.obj
call :Clean %filename% exe pdb
ml %mlOption% %filename%.asm
if exist %filename%.rc (
rc %filename%.rc
set linkfile=%linkfile% %filename%.res
)
rem To share ".data?" section, please add: /section:.bss,S
if exist %filename%.def set linkOption=%linkOption% /DLL /DEF:%filename%.def
link %linkOption% %linkfile%
rem Ext INFO: http://support.microsoft.com/default.aspx?scid=kb;en-us;Q132340
call :Clean %filename% obj res ilk exp
if exist %filename%.exe start /b cmd /c %filename%.exe
echo on & goto :eof
:Clean
if "%2"=="" goto :CleanEnd
if exist %filename%.%2 del %filename%.%2
shift
goto Clean
:CleanEnd
(3)"사용자 도구"조합:메뉴"고급(A)"-"도구 조합(O)"을 순서대로 선택 하고"도구 조합"창 을 열 고"삽입"을 누 른 다음"명령"탭 을 선택 하고"메뉴 항목 이름(M):"&Go"를 입력 하 십시오."명령 행(L):"뒤에"D:/masm 32/Nmake"를 입력 하 십시오.Make/Go.bat"%n"(Go.bat 길 은 자신의 설정 대로 하 십시오.뒤의%n 의 n 은 소문 자 n 이 좋 습 니 다.대문자 N 이면 긴 파일 이름 을 DOS 의 8.3 형식의 파일 이름 으로 바 꿉 니 다).마지막 으로'작업 디 렉 터 리(W):'에'%P'를 입력 하면 현재 경 로 를 나 타 냅 니 다.(4)"도구 모음"에 추가:메뉴"고급(A)"-"조제(C)"를 순서대로 선택 하고"조제"대화 상 자 를 열 고"도구 모음 과 메뉴"를 펼 치고"맞 춤 형 도구 모음"단 추 를 누 르 고"도구 모음 조제"창의 오른쪽 목록 상자 에서"사용자 도구 1"을 찾 습 니 다.선택 하고 오른쪽 에 있 는 작은 삼각형 을 누 르 십시오.확인 하 십시오.우리 가 정의 한'사용자 도구 1'은 도구 모음 에 추가 되 었 습 니 다.(5)정의 단축 키(F5):네 번 째 단계 에서"조합"대화 상 자 를 열 고"키 맵"을 찾 아"사용자 도구 1"을 찾 습 니 다."새(여러 개)키 를 누 르 십시오."아래 텍스트 에서"F5"키 를 누 르 고"할당"을 누 르 십시오.나중에 프로그램 을 다 쓴 후에 VC+에서"F5"를 누 르 면 실 행 됩 니 다.
3.검 수 는 여기 서 Win32ASM 애플 릿 을 제시 하고 빨리 성 과 를 검사 합 시다!
[csharp] view plain copy print ?
.386
.model flat,stdcall
option casemap:none
;include
include windows.inc
include user32.inc
includelib user32.lib
include kernel32.inc
includelib kernel32.lib
;data
.data
szCaption db'축하합니다',0
szText db'이 정 보 를 보 았 을 때 WIN 32 어 셈 블 리 프로그램 을 컴 파일 할 수 있 습 니 다!'0
;code
.code
start:
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK
invoke ExitProcess,NULL
end start