📄 asmhello.asm
字号:
;***************************
;文件:AsmHello.asm *
;功能:动态VxD的例子汇编版 *
;***************************
.386p
include C:\98DDK\inc\win98\vmm.inc ;头文件
include C:\98DDK\inc\win98\shell.inc
include C:\98DDK\inc\win98\debug.inc
Declare_Virtual_Device \
ASMHELLO, \
1, 0, \
ASMHELLO_control, \
Undefined_Device_ID, Undefined_Init_Order
;消息分派
Begin_Control_Dispatch ASMHELLO
Control_Dispatch Sys_Dynamic_Device_Init, OnDynInitAsm, cCall
Control_Dispatch Sys_Dynamic_Device_Exit, OnDynExitAsm, cCall
Control_Dispatch W32_DeviceIOControl, OnDynCtlAsm, cCall
End_Control_Dispatch ASMHELLO
;可分页数据段
VxD_PAGEABLE_DATA_SEG
Caption db "VxD Say Hello",0
VxDInit db "VxD动态加载——汇编程序版本",0
VxD_PAGEABLE_DATA_ENDS
;可分页代码段
VxD_PAGEABLE_CODE_SEG
BeginProc SayHello ;显示对话框
mov ecx, OFFSET32 VxDInit
VMMCall Get_sys_vm_handle
mov eax,MB_OK+MB_ICONEXCLAMATION
mov edi,OFFSET32 Caption
xor esi,esi
xor edx,edx
VxDCall SHELL_Message
ret
EndProc SayHello
BeginProc OnDynInitAsm ;VxD初始化
call SayHello
mov eax,1
ret
EndProc OnDynInitAsm
BeginProc OnDynExitAsm ;VxD退出
mov eax,1
ret
EndProc OnDynExitAsm
BeginProc OnDynCtlAsm ;IO Control
xor eax,eax
ret
EndProc OnDynCtlAsm
VxD_PAGEABLE_CODE_ENDS
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -