首页
社区
课程
招聘
[求助]汇编中如何通过命令行传参数
2009-12-2 15:28 3891

[求助]汇编中如何通过命令行传参数

2009-12-2 15:28
3891
.386
.model flat,stdcall
option casemap:none
include windows.inc
include user32.inc
includelib user32.lib
include kernel32.inc
includelib kernel32.lib

.data
;需要被异或加密的文件名
FileName  db "c:\Dialog.exe",0

.data?
hFile         dd ?
FileSize dd ?
FileMap  dd ?
.code
start:
;打开文件
invoke CreateFile,addr FileName,GENERIC_READ or GENERIC_WRITE,FILE_SHARE_DELETE,NULL,OPEN_EXISTING,NULL,NULL
mov hFile,eax
; 得到文件大小
invoke GetFileSize,hFile,NULL
mov FileSize,eax
;下面进行内存映射
invoke CreateFileMapping,hFile,NULL,PAGE_READWRITE,NULL,NULL,NULL
mov FileMap,eax
invoke MapViewOfFile,FileMap,FILE_MAP_ALL_ACCESS,NULL,NULL,NULL
mov ecx,FileSize

;通过文件大小对每一位进行和0x1异或
s:
mov dl,[eax]
xor dl,1
mov [eax],dl
add eax,1
dec ecx
jne  s
;程序退出
invoke ExitProcess,0
end start
通过内存映射文件做了个对文件的异或加密的小程序
但是希望文件名通过命令行传入,希望有人能帮忙提示~

阿里云助力开发者!2核2G 3M带宽不限流量!6.18限时价,开 发者可享99元/年,续费同价!

收藏
点赞0
打赏
分享
最新回复 (2)
雪    币: 202
活跃值: (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
zerostudy 2009-12-2 16:05
2
0
参看 罗云彬那书 第13章 进程控制
雪    币: 112
活跃值: (48)
能力值: ( LV9,RANK:320 )
在线值:
发帖
回帖
粉丝
charme 7 2009-12-2 20:06
3
0
GetCommandLine不就行了
游客
登录 | 注册 方可回帖
返回