Assembly 从汇编语言运行另一个程序
我现在正在Windows7MASM32中学习x86汇编语言,我想制作一个可以打开记事本的脚本。我在谷歌上搜索过,似乎什么也找不到。我该怎么做 任何帮助都将不胜感激Assembly 从汇编语言运行另一个程序,assembly,x86,masm,Assembly,X86,Masm,我现在正在Windows7MASM32中学习x86汇编语言,我想制作一个可以打开记事本的脚本。我在谷歌上搜索过,似乎什么也找不到。我该怎么做 任何帮助都将不胜感激 谢谢看CreateProcess或ShellExecute push offset proc_info ;; lpProcessInformation push offset startup_info ;; lpStartupInfo push offset ne
谢谢看CreateProcess或ShellExecute
push offset proc_info ;; lpProcessInformation
push offset startup_info ;; lpStartupInfo
push offset new_dir ;; lpCurrentDirectory
push 00h ;; lpEnviroment (get from calling process)
push 00h ;; dwCreatingFlags
push 00h ;; lpInheritHandles = FALSE
push 00h ;; lpThreadAttributes
push 00h ;; lpProcessAttributes (default process descriptor)
push offset params ;; lpCommandLine =
push offset app ;; lpApplicationName
extrn CreateProcessA: proc
call CreateProcessA
;; ...
proc_info:
pi_hProcess dd ?
pi_hThread dd ?
pi_dwProcessId dd ?
pi_dwThreadId dd ?
;;---------------------------------------------------------------
startup_info:
si_cb dd si_len
si_lpReserved dd 0 ;; NULL
si_lpDesktop dd 0 ;; NULL
si_lpTitle dd 0 ;; NULL
si_dwX dd 0
si_dwY dd 0
si_dwXSize dd 0
si_dwYSize dd 0
si_XCountsChar dd 0
si_YCountsChar dd 0
si_dwFillAttribute dd 0
si_dwFlags dd 0
si_wShowWindow dw 0 ;; SW_HIDE
si_cbReserved2 dw 0
si_lpReserved2 dd 0 ;; NULL
si_hStdInput dd 0 ;;
si_hStdOutput dd 0 ;; IGNORED
si_hStdError dd 0 ;;
si_len equ $-startup_info
一种方法是调用
系统
函数。你能告诉我怎么做吗?这会做什么?我看不出这有什么用,别担心。现在有道理了。