message.asm

来自「一个ASM编的VXD例子」· 汇编 代码 · 共 40 行

ASM
40
字号
.386p 
include vmm.inc 
include shell.inc

DECLARE_VIRTUAL_DEVICE MESSAGE,1,0, MESSAGE_Control, UNDEFINED_DEVICE_ID, UNDEFINED_INIT_ORDER

Begin_control_dispatch MESSAGE
	Control_Dispatch Create_VM, OnVMCreate
	Control_Dispatch VM_Terminate2, OnVMClose
End_control_dispatch MESSAGE

VxD_PAGEABLE_DATA_SEG
MsgTitle db "VxD MessageBox",0
VMCreated db "A VM is created",0
VMDestroyed db "A VM is destroyed",0
VxD_PAGEABLE_DATA_ENDS

VxD_PAGEABLE_CODE_SEG

BeginProc OnVMCreate
	mov ecx, OFFSET32 VMCreated
CommonCode:
	VMMCall Get_sys_vm_handle
	mov eax,MB_OK+MB_ICONEXCLAMATION
	mov edi, OFFSET32 MsgTitle
	xor esi,esi
	xor edx,edx
	VxDCall SHELL_Message
	ret
EndProc OnVMCreate

BeginProc OnVMClose
	mov ecx,OFFSET32 VMDestroyed
	jmp CommonCode
EndProc OnVMClose

VxD_PAGEABLE_CODE_ENDS

end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?