-
-
[原创][求助]CreateFile 居然失败,为何
-
发表于:
2009-8-6 21:42
4864
-
[原创][求助]CreateFile 居然失败,为何
如题,ExeFile db 128 dup(?)定义了这个却无法打开.
当在.DATA中定义,ExeFile db '1.exe',0 是可以的.
是StdIn后无法找到字符结束?? 如何解决呢
----------------------------------------------------------------------------------
.386
.model flat,stdcall
option casemap:none
include windows.inc
include kernel32.inc
include user32.inc
include masm32.inc
includelib kernel32.lib
includelib user32.lib
includelib masm32.lib
include macros.asm
.data
hFile dd ?
hMapFile dd ?
.data?
ExeFile db 128 dup(?)
Buffer db 256 dup(?)
.code
start:
invoke StdIn,offset ExeFile,sizeof ExeFile
invoke
CreateFile,offset ExeFile,GENERIC_READ or \
GENERIC_WRITE,FILE_SHARE_READ or FILE_SHARE_WRITE,\
NULL,OPEN_EXISTING,FILE_ATTRIBUTE_ARCHIVE,NULL
.if eax != INVALID_HANDLE_VALUE
invoke StdOut,CTXT("Open file OK! ")
.else
invoke StdOut,CTXT("Open file Error ")
.endif
invoke CloseHandle,hFile
invoke CloseHandle,hMapFile
invoke StdIn,offset Buffer,sizeof Buffer
invoke ExitProcess,NULL
end start
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课