4

現在、Windows 7 MASM32 で x86 アセンブリ言語を学習しており、メモ帳を開くスクリプトを作成したいと考えています。私はGoogleを見てきましたが、何も見つからないようです。これどうやってするの?

どんな助けでも大歓迎です。

ありがとう

4

1 に答える 1

2

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
于 2012-08-15T06:32:21.240 に答える